openapi: 3.0.3 info: description: APIs and Definitions for the Pulumi Cloud product. title: Pulumi APIs AccessTokens Environments API version: 1.0.0 tags: - name: Environments paths: /api/esc/environments: get: description: Returns a paginated list of all Pulumi ESC environments accessible to the authenticated user across all organizations they belong to. Each entry includes the organization, project, environment name, and creation/modification timestamps. Use the organization query parameter to filter results to a specific organization. Use continuationToken for pagination through large result sets. operationId: ListEnvironments_esc parameters: - description: Continuation token for paginated results in: query name: continuationToken schema: type: string - description: Whether to include referrer metadata. Defaults to false. in: query name: includeReferrerMetadata schema: type: boolean - description: Maximum number of results for pagination in: query name: maxResults schema: format: int64 type: integer - description: Filter results to this organization name in: query name: organization schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListEnvironmentsResponse' description: OK '400': description: Invalid continuation token summary: ListEnvironments tags: - Environments /api/esc/environments/{orgName}: get: description: Returns a paginated list of all Pulumi ESC environments within a specific organization. Each entry includes the project, environment name, and creation/modification timestamps. Results are scoped to the organization specified in the URL path. Use continuationToken for pagination through large result sets. operationId: ListOrgEnvironments_esc parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: Continuation token for paginated results in: query name: continuationToken schema: type: string - description: Whether to include referrer metadata. Defaults to false. in: query name: includeReferrerMetadata schema: type: boolean - description: Maximum number of results for pagination in: query name: maxResults schema: format: int64 type: integer - description: The custom role to use for listing environments in: query name: roleID schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListEnvironmentsResponse' description: OK '400': description: invalid query parameter '404': description: environment '409': description: the environment has changed since it was read summary: ListOrgEnvironments tags: - Environments post: description: Creates a new Pulumi ESC (Environments, Secrets, and Configuration) environment within the specified organization. The request body must include the project name and the environment name. Environment names must be unique within a project and may only contain alphanumeric characters, hyphens, underscores, and periods. The newly created environment starts with an empty YAML definition that can be updated via the UpdateEnvironment endpoint. operationId: CreateEnvironment_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateEnvironmentRequest' x-originalParamName: body responses: '200': description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: CreateEnvironment tags: - Environments /api/esc/environments/{orgName}/restore: get: description: Returns a paginated list of soft-deleted Pulumi ESC environments within an organization that are still within the retention window and eligible for restoration. Use the continuationToken query parameter for pagination. Deleted environments can be restored via the RestoreEnvironment endpoint. operationId: ListDeletedEnvironments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: Continuation token for paginated results in: query name: continuationToken schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListEnvironmentsResponse' description: OK '400': description: Invalid continuation token '404': description: not found summary: ListDeletedEnvironments tags: - Environments put: description: Restores a previously deleted Pulumi ESC environment within an organization. The request body specifies the environment to restore by its project and name. The environment must have been deleted within the retention window and not yet permanently purged. Returns 204 on success with no response body. Returns 404 if the deleted environment cannot be found. operationId: RestoreEnvironment parameters: - description: The organization name in: path name: orgName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/RestoreEnvironmentRequest' x-originalParamName: body responses: '204': description: No Content '404': description: not found summary: RestoreEnvironment tags: - Environments /api/esc/environments/{orgName}/tags: get: description: Returns a map of all unique tag names and their distinct values across all Pulumi ESC environments in the organization. The response is a map where each key is a tag name and the value is a list of all distinct values for that tag across all environments. This is useful for building tag-based filtering or discovery UIs. operationId: ListAllEnvironmentTags_esc parameters: - description: The organization name in: path name: orgName required: true schema: type: string responses: '200': content: application/json: schema: additionalProperties: items: type: string type: array type: object description: successful operation '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: ListAllEnvironmentTags tags: - Environments /api/esc/environments/{orgName}/yaml/check: post: description: Checks a raw YAML environment definition for errors without creating or modifying any environment. The YAML definition is provided in the request body and validated for correctness, including imports, provider configurations, function invocations, and interpolation expressions. When the showSecrets query parameter is set to true, secret values are returned in plaintext in the response. This is useful for validating environment definitions before applying them. operationId: CheckYAML_esc parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: Whether to show secret values in plaintext in: query name: showSecrets schema: type: boolean responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnvironmentResponse' description: OK '400': description: invalid query parameter '404': description: environment '409': description: the environment has changed since it was read summary: CheckYAML tags: - Environments /api/esc/environments/{orgName}/yaml/open: post: description: Opens an anonymous Pulumi ESC environment from a raw YAML definition provided in the request body, fully resolving all dynamic values, provider integrations, and secrets. Unlike OpenEnvironment, this does not require a pre-existing environment to be stored. The duration parameter specifies how long the session remains valid using Go duration format. Returns an OpenEnvironmentResponse containing the session ID. Use the session ID with ReadAnonymousOpenEnvironment to retrieve the resolved values. operationId: OpenYAML_esc parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: 'The session duration, using Go time units: ns, us, ms, s, m, h (e.g. ''2h'')' in: query name: duration schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenEnvironmentResponse' description: OK '400': description: invalid query parameter '404': description: environment '409': description: the environment has changed since it was read summary: OpenYAML tags: - Environments /api/esc/environments/{orgName}/yaml/open/{openSessionID}: get: description: Reads the fully resolved values from an anonymous open environment session that was created via the OpenYAML endpoint. The openSessionID path parameter must match a valid, non-expired session. The optional property query parameter accepts a dot-separated path to retrieve a specific nested value instead of the entire resolved environment (e.g., 'aws.credentials.accessKeyId'). The response contains the resolved configuration values with secrets decrypted. operationId: ReadAnonymousOpenEnvironment_esc parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The session ID returned from the open environment operation in: path name: openSessionID required: true schema: type: string - description: A dot-separated path to a specific property to retrieve from the environment in: query name: property schema: type: string responses: '200': content: application/json: schema: type: object description: OK '400': description: invalid query parameter '404': description: path '409': description: the environment has changed since it was read summary: ReadAnonymousOpenEnvironment tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}: delete: description: Permanently deletes a Pulumi ESC environment and all of its revision history, tags, and associated configuration. This operation is blocked if deletion protection is enabled on the environment (see PatchEnvironmentSettings). Enterprise and Business Critical edition organizations may be able to restore deleted environments within a retention window. Returns 409 if the environment is deletion-protected or has been modified since it was last read. operationId: DeleteEnvironment_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read, or it's deletion-protected summary: DeleteEnvironment tags: - Environments get: description: Returns the YAML definition of a Pulumi ESC environment. The response is in application/x-yaml format and includes the environment's imports, values, provider configurations, and function invocations. Secrets remain in their encrypted form (use DecryptEnvironment to see plaintext secrets, or OpenEnvironment to fully resolve all dynamic values). When a version path parameter is provided, returns the definition for that specific revision. operationId: ReadEnvironment_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': content: application/x-yaml: schema: type: string description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: ReadEnvironment tags: - Environments head: description: Returns the ETag header for a Pulumi ESC environment without returning the full definition body. This is used for lightweight existence checks and for obtaining the current ETag value for optimistic concurrency control. The ETag should be included in subsequent update requests via the If-Match header to prevent concurrent modification conflicts. Returns 404 if the environment does not exist. operationId: HeadEnvironment_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': content: application/json: schema: type: object description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: HeadEnvironment tags: - Environments patch: description: Validates and updates the YAML definition of a Pulumi ESC environment. The request body must contain the complete environment definition in application/x-yaml format, including imports, values, provider configurations, and function invocations. Each successful update creates a new immutable revision in the environment's version history. Supports optimistic concurrency control via ETag/If-Match headers; returns 409 if the environment has been modified since it was last read. operationId: UpdateEnvironment_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string requestBody: content: application/x-yaml: schema: type: string x-originalParamName: body responses: '200': content: application/json: schema: $ref: '#/components/schemas/UpdateEnvironmentResponse' description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: UpdateEnvironment tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/check: post: description: Checks a Pulumi ESC environment definition for errors without applying changes. This validates the YAML definition including imports, provider configurations, function invocations (fn::open, fn::secret, etc.), and interpolation expressions. When the showSecrets query parameter is set to true, secret values are returned in plaintext in the response. The response includes any diagnostics or validation errors found in the environment definition. Supports optimistic concurrency control via ETag headers. operationId: CheckEnvironment_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: Whether to show secret values in plaintext in: query name: showSecrets schema: type: boolean responses: '200': content: application/json: schema: $ref: '#/components/schemas/CheckEnvironmentResponse' description: OK '400': description: invalid query parameter '404': description: revision tag '409': description: the environment has changed since it was read summary: CheckEnvironment tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/clone: post: description: 'Creates a duplicate of a Pulumi ESC environment in a new project and/or under a new name. The request body specifies the destination project and environment name, along with options to control what is preserved during the clone: preserveAccess retains permission settings, preserveHistory retains the full revision history, preserveEnvironmentTags retains environment-level tags, and preserveRevisionTags retains version-specific tags. Environments cannot be renamed directly, so cloning is the mechanism for moving or renaming environments.' operationId: CloneEnvironment parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CloneEnvironmentRequest' x-originalParamName: body responses: '204': description: No Content '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: CloneEnvironment tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/decrypt: get: description: Reads the YAML definition for a Pulumi ESC environment with all static secrets decrypted and shown in plaintext. Unlike the standard ReadEnvironment endpoint which returns secrets in their encrypted form, this endpoint resolves fn::secret values to their plaintext representations. The response is returned in application/x-yaml format. This does not resolve dynamic provider values (fn::open); use OpenEnvironment for full resolution. Requires environment open permission. operationId: DecryptEnvironment_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': content: application/x-yaml: schema: type: string description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: DecryptEnvironment tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/decrypt-secrets: post: description: Decrypts encrypted secret values in a Pulumi ESC environment definition. Takes an environment definition containing encrypted secrets and returns the same definition with those values decrypted to plaintext. This is useful for inspecting or migrating environment definitions that contain fn::secret values. Requires environment open permission. Returns 413 if the request content exceeds the maximum allowed size. operationId: DecryptEnvironmentSecrets parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/DecryptEnvironmentSecretsRequest' x-originalParamName: body responses: '200': content: application/json: schema: $ref: '#/components/schemas/DecryptEnvironmentSecretsResponse' description: OK '400': description: Invalid input '404': description: Organization or Environment not found '413': description: Request Content Too Large summary: DecryptEnvironmentSecrets tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/drafts: post: description: Creates a new draft change request for a Pulumi ESC environment. Drafts allow proposing changes to an environment definition that can be reviewed and approved before being applied. This is part of the approvals workflow for environments. Returns a ChangeRequestRef containing the draft identifier. Requires the Approvals feature to be enabled for the organization. operationId: CreateEnvironmentDraft parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChangeRequestRef' description: OK '400': description: Bad request '404': description: draft '409': description: the environment has changed since it was read summary: CreateEnvironmentDraft tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/drafts/{changeRequestID}: get: description: Reads the YAML definition for a draft version of a Pulumi ESC environment. Drafts are proposed changes created as part of the approvals workflow. The draft is identified by the changeRequestID path parameter. An optional revision query parameter can target a specific base revision. The response is returned in application/x-yaml format. Requires the Approvals feature to be enabled. operationId: ReadEnvironmentDraft parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The change request ID in: path name: changeRequestID required: true schema: type: string - description: The environment revision number to target in: query name: revision schema: format: int64 type: integer responses: '200': content: application/x-yaml: schema: type: string description: OK '400': description: Invalid input summary: ReadEnvironmentDraft tags: - Environments patch: description: Updates the YAML definition of an existing draft change request for a Pulumi ESC environment. The draft is identified by the changeRequestID path parameter. The request body contains the updated YAML definition. Returns a ChangeRequestRef on success. Requires the Approvals feature to be enabled for the organization. operationId: UpdateEnvironmentDraft parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The change request ID in: path name: changeRequestID required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChangeRequestRef' description: OK '400': description: Bad request '404': description: draft '409': description: the environment has changed since it was read summary: UpdateEnvironmentDraft tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/drafts/{changeRequestID}/open: post: description: Opens a draft version of a Pulumi ESC environment, fully resolving all dynamic values, provider integrations, and secrets for the proposed changes. The duration parameter specifies how long the open session remains valid using Go duration format (e.g., '2h', '30m'). An optional revision parameter can target a specific base revision. Returns an OpenEnvironmentResponse containing the session ID for subsequent reads. Requires the Approvals feature. operationId: OpenEnvironmentDraft parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The change request ID in: path name: changeRequestID required: true schema: type: string - description: 'The session duration, using Go time units: ns, us, ms, s, m, h (e.g. ''2h'')' in: query name: duration schema: type: string - description: The environment revision number to target in: query name: revision schema: format: int64 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenEnvironmentResponse' description: OK '400': description: invalid query parameter '404': description: Change Request '409': description: the environment has changed since it was read summary: OpenEnvironmentDraft tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/encrypt-secrets: post: description: Encrypts plaintext secret values in a Pulumi ESC environment definition. Takes an environment definition containing plaintext secrets and returns the same definition with those values encrypted using the environment's encryption key. This is useful for preparing environment definitions that contain sensitive values before storing or updating them. Returns 413 if the request content exceeds the maximum allowed size. operationId: EncryptEnvironmentSecrets parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/EncryptEnvironmentSecretsRequest' x-originalParamName: body responses: '200': content: application/json: schema: $ref: '#/components/schemas/EncryptEnvironmentSecretsResponse' description: OK '400': description: Invalid input '404': description: Organization or Environment not found '413': description: Request Content Too Large summary: EncryptEnvironmentSecrets tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/hooks: get: description: Returns a list of all webhooks configured for a Pulumi ESC environment. Each webhook entry includes its name, destination URL, event filters, format, and active status. Webhooks enable external services to be notified of environment events such as updates and opens. operationId: ListWebhooks_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/WebhookResponse' type: array description: successful operation summary: ListWebhooks tags: - Environments post: description: Creates a new webhook for a Pulumi ESC environment. Webhooks allow external services to be notified when environment events occur, such as updates or opens. The request body specifies the webhook configuration including the destination URL, event filters, and format. Returns 400 if the organization name in the request body does not match the URL path parameter. Returns 409 if a webhook with the same name already exists. operationId: CreateWebhook_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Webhook' x-originalParamName: body responses: '201': content: application/json: schema: $ref: '#/components/schemas/WebhookResponse' description: Created '400': description: Organization name from request body doesn't match URL. '409': description: Webhook already exists summary: CreateWebhook tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/hooks/{hookName}: delete: description: Deletes a webhook from a Pulumi ESC environment. The webhook is identified by its name in the URL path. After deletion, the external service will no longer receive notifications for environment events. Returns 204 on success with no response body. operationId: DeleteWebhook_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The webhook name in: path name: hookName required: true schema: type: string responses: '204': description: No Content summary: DeleteWebhook tags: - Environments get: description: Returns the configuration and status of a single webhook for a Pulumi ESC environment. The webhook is identified by its name in the URL path. The response includes the webhook's destination URL, event filters, format, and active status. Returns 404 if the webhook does not exist. operationId: GetWebhook_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The webhook name in: path name: hookName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/WebhookResponse' description: OK '404': description: Webhook summary: GetWebhook tags: - Environments patch: description: Updates the configuration of an existing webhook on a Pulumi ESC environment. The webhook is identified by its name in the URL path. The request body contains the updated webhook configuration including destination URL, event filters, format, and active status. Returns the updated WebhookResponse on success. Returns 400 if an invalid format is specified. operationId: UpdateWebhook_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The webhook name in: path name: hookName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Webhook' x-originalParamName: body responses: '200': content: application/json: schema: $ref: '#/components/schemas/WebhookResponse' description: OK '400': description: '''pulumi_deployments'' format can only be used on stack or environment webhooks.' '404': description: Webhook summary: UpdateWebhook tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/hooks/{hookName}/deliveries: get: description: Returns a list of recent delivery attempts for a specific webhook on a Pulumi ESC environment. Each delivery record includes the HTTP status code, response body, timestamp, and whether the delivery was successful. This is useful for debugging webhook integration issues and verifying that events are being received. operationId: GetWebhookDeliveries_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The webhook name in: path name: hookName required: true schema: type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/WebhookDelivery' type: array description: successful operation summary: GetWebhookDeliveries tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/hooks/{hookName}/deliveries/{event}/redeliver: post: description: Triggers the Pulumi Service to redeliver a specific event to a webhook on a Pulumi ESC environment. This is useful for resending events that the webhook endpoint failed to process on the initial delivery attempt (e.g., due to temporary downtime or errors). The event is identified by its delivery event ID in the URL path. Returns the new WebhookDelivery record for the redelivery. operationId: RedeliverWebhookEvent_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The webhook name in: path name: hookName required: true schema: type: string - description: The webhook delivery event ID to redeliver in: path name: event required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/WebhookDelivery' description: OK '404': description: Webhook summary: RedeliverWebhookEvent tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/hooks/{hookName}/ping: post: description: Sends a test ping event to a webhook on a Pulumi ESC environment to verify that the webhook endpoint is reachable and functioning correctly. This bypasses the normal message queue and issues the request directly to the webhook URL. Returns the WebhookDelivery record containing the HTTP status code and response from the target endpoint. operationId: PingWebhook_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The webhook name in: path name: hookName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/WebhookDelivery' description: OK '404': description: Organization or Environment not found summary: PingWebhook tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/metadata: get: description: Returns metadata for a Pulumi ESC environment, including the calling user's effective permission level (read, open, write, admin), creation and modification timestamps, the environment's project, and other administrative information. This is useful for determining what actions the current user can perform on the environment before attempting those operations. operationId: GetEnvironmentMetadata_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnvironmentMetadata' description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: GetEnvironmentMetadata tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/open: post: description: Opens a Pulumi ESC environment, fully resolving all dynamic values, provider integrations (fn::open), interpolation expressions, and secrets. This initiates an access session that evaluates the complete environment definition including all imports. The duration parameter specifies how long the session remains valid using Go duration format (e.g., '2h45m', '300ms'). Returns an OpenEnvironmentResponse containing the session ID and any diagnostics. Use the session ID with ReadOpenEnvironment to retrieve the resolved values. operationId: OpenEnvironment_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: 'The session duration, using Go time units: ns, us, ms, s, m, h (e.g. ''2h'')' in: query name: duration schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenEnvironmentResponse' description: OK '400': description: invalid query parameter '404': description: revision tag '409': description: the environment has changed since it was read summary: OpenEnvironment tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/open/request: post: description: Creates an open request for a Pulumi ESC environment that has gated opens enabled. When an environment has open gates configured, opening the environment requires an approval workflow. This endpoint initiates that process by creating an open request, and also creates corresponding open requests for each imported environment that has open gates. Requires the Approvals feature to be enabled for the organization. Returns 400 if the environment does not have gated opens. operationId: CreateOpenEnvironmentRequest parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateEnvironmentOpenRequest' x-originalParamName: body responses: '200': content: application/json: schema: $ref: '#/components/schemas/CreateEnvironmentOpenRequestResponse' description: OK '400': description: unable to create open request, please check whether opens are gated '404': description: open request '409': description: the environment has changed since it was read summary: CreateOpenEnvironmentRequest tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/open/request/{changeRequestID}: get: description: Reads the details of an open environment request that was created as part of the gated opens approval workflow. The request is identified by the changeRequestID path parameter. The response includes the request's status, the requesting user, and approval details. An optional revision query parameter can target a specific environment revision. Requires the Approvals feature to be enabled. operationId: ReadOpenEnvironmentRequest parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The change request ID in: path name: changeRequestID required: true schema: type: string - description: The environment revision number to target in: query name: revision schema: format: int64 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/CreateEnvironmentOpenRequest' description: OK '400': description: invalid query parameter '404': description: open request '409': description: the environment has changed since it was read summary: ReadOpenEnvironmentRequest tags: - Environments put: description: Updates an existing open environment request that was created as part of the gated opens approval workflow. The request is identified by the changeRequestID path parameter. The request body contains the updated open request details, such as approval status. Returns a ChangeRequestRef on success. Requires the Approvals feature to be enabled for the organization. operationId: UpdateOpenEnvironmentRequest parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The change request ID in: path name: changeRequestID required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateEnvironmentOpenRequest' x-originalParamName: body responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChangeRequestRef' description: OK '400': description: Bad request '404': description: open request '409': description: the environment has changed since it was read summary: UpdateOpenEnvironmentRequest tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/open/{openSessionID}: get: description: Reads the fully resolved values from an open environment session that was created via the OpenEnvironment endpoint. The openSessionID path parameter must match a valid, non-expired session. The optional property query parameter accepts a dot-separated path to retrieve a specific nested value instead of the entire resolved environment (e.g., 'aws.credentials.accessKeyId'). The response contains all resolved configuration values with secrets decrypted and provider-sourced values fully evaluated. operationId: ReadOpenEnvironment_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The session ID returned from the open environment operation in: path name: openSessionID required: true schema: type: string - description: A dot-separated path to a specific property to retrieve from the environment in: query name: property schema: type: string responses: '200': content: application/json: schema: type: object description: OK '400': description: invalid query parameter '404': description: path '409': description: the environment has changed since it was read summary: ReadOpenEnvironment tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/ownership: post: description: Changes the ownership of the specified environment to the provided user. Returns the identity of the previous owner. operationId: ReassignEnvironmentOwnership parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/UserInfo' description: The new owner's identity x-originalParamName: body responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserInfo' description: OK summary: ReassignEnvironmentOwnership tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/referrers: get: description: Returns a paginated list of entities that reference a Pulumi ESC environment, including other environments that import it and Pulumi stacks that use it in their configuration. The count parameter limits results (range 1-500). Set allRevisions to true to include references across all revisions, and latestStackVersionOnly to true to return only the latest stack version for each referring stack. Use continuationToken for pagination. operationId: ListEnvironmentReferrers_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: Whether to include all revisions in: query name: allRevisions schema: type: boolean - description: Continuation token for paginated results in: query name: continuationToken schema: type: string - description: Maximum number of results to return in: query name: count schema: format: int64 type: integer - description: Whether to return only the latest stack version in: query name: latestStackVersionOnly schema: type: boolean responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListEnvironmentReferrersResponse' description: OK '400': description: count must be in the range [1, 500] '404': description: environment summary: ListEnvironmentReferrers tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/rotate: post: description: Triggers secret rotation for a Pulumi ESC environment. This evaluates all fn::rotate declarations in the environment definition and rotates the corresponding secrets in their external systems (e.g., rotating database passwords, API keys, or cloud credentials). Requires the secret rotation feature to be enabled for the organization. Returns 409 if the environment has been modified since it was last read. operationId: RotateEnvironment parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/RotateEnvironmentRequest' x-originalParamName: body responses: '200': content: application/json: schema: $ref: '#/components/schemas/RotateEnvironmentResponse' description: OK '400': description: Bad request '403': description: Secret rotation is not enabled for this organization '409': description: the environment has changed since it was read summary: RotateEnvironment tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/rotate/history: get: description: Returns the secret rotation history for a Pulumi ESC environment. Each entry represents a rotation event where secrets defined with fn::rotate were cycled to new values in their external systems. The response includes timestamps, outcomes, and the rotators involved. Requires the secret rotation feature to be enabled for the organization. operationId: ListEnvironmentSecretRotationHistory parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListEnvironmentSecretRotationHistoryResponse' description: OK '403': description: Secret rotation is not enabled for the organization summary: ListEnvironmentSecretRotationHistory tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/schedules: get: description: Returns all scheduled actions configured for a Pulumi ESC environment. Schedules automate recurring operations such as secret rotation. The response includes each schedule's timing configuration, action type, and current status (active or paused). operationId: ListEnvironmentSchedule parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListScheduledActionsResponse' description: OK '404': description: Organization or Environment not found summary: ListEnvironmentSchedule tags: - Environments post: description: Creates a new scheduled action for a Pulumi ESC environment. Schedules can be used to automate recurring operations on environments, such as secret rotation. The request body specifies the schedule timing and the action to perform. Returns the created ScheduledAction on success. Requires the secret rotation feature to be enabled for the organization. operationId: CreateEnvironmentSchedule parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateEnvironmentScheduleRequest' x-originalParamName: body responses: '200': content: application/json: schema: $ref: '#/components/schemas/ScheduledAction' description: OK '400': description: Invalid input '403': description: Secret rotation feature is not enabled for the organization '404': description: Organization or Environment not found summary: CreateEnvironmentSchedule tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/schedules/{scheduleID}: delete: description: Permanently deletes a scheduled action from a Pulumi ESC environment. This removes the schedule and cancels any future executions. The schedule is identified by its scheduleID. Requires the secret rotation feature to be enabled for the organization. operationId: DeleteEnvironmentSchedule parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The schedule ID in: path name: scheduleID required: true schema: type: string responses: '200': description: OK '400': description: Bad Request '403': description: Secret rotation feature is not enabled for the organization '404': description: Organization or Environment not found summary: DeleteEnvironmentSchedule tags: - Environments get: description: Returns the details of a specific scheduled action for a Pulumi ESC environment. The schedule is identified by the scheduleID path parameter. The response includes the schedule's timing configuration (cron expression or one-time), the action to perform, and the current status (active or paused). operationId: ReadEnvironmentSchedule parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The schedule ID in: path name: scheduleID required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ScheduledAction' description: OK summary: ReadEnvironmentSchedule tags: - Environments patch: description: Updates the configuration of a scheduled action for a Pulumi ESC environment. The schedule is identified by the scheduleID path parameter. The request body specifies the updated timing and action configuration. Changes take effect for future executions only; any currently running execution is not affected. Returns the updated ScheduledAction on success. operationId: UpdateEnvironmentSchedule parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The schedule ID in: path name: scheduleID required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateEnvironmentScheduleRequest' x-originalParamName: body responses: '200': content: application/json: schema: $ref: '#/components/schemas/ScheduledAction' description: OK '400': description: Bad request '404': description: EnvironmentSchedule summary: UpdateEnvironmentSchedule tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/schedules/{scheduleID}/history: get: description: Returns the execution history for a specific scheduled action on a Pulumi ESC environment. Each history entry includes the execution timestamp, outcome (success or failure), and any error details. This is useful for monitoring the reliability of automated operations like secret rotation. operationId: ListEnvironmentScheduleHistory parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The schedule ID in: path name: scheduleID required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListScheduledActionHistoryResponse' description: OK '404': description: Organization or Environment not found summary: ListEnvironmentScheduleHistory tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/schedules/{scheduleID}/pause: post: description: Pauses a scheduled action on a Pulumi ESC environment, preventing any future executions until the schedule is resumed. The schedule's configuration is preserved and can be reactivated via the ResumeEnvironmentSchedule endpoint. This is useful for temporarily disabling automated operations like secret rotation without deleting the schedule. operationId: PauseEnvironmentSchedule parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The schedule ID in: path name: scheduleID required: true schema: type: string responses: '200': description: OK '404': description: Organization or Environment not found summary: PauseEnvironmentSchedule tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/schedules/{scheduleID}/resume: post: description: Resumes a previously paused scheduled action on a Pulumi ESC environment, re-enabling future executions. The schedule will continue from its next scheduled time according to its configured timing (cron expression or one-time schedule). The schedule is identified by the scheduleID path parameter. operationId: ResumeEnvironmentSchedule parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The schedule ID in: path name: scheduleID required: true schema: type: string responses: '200': description: OK '404': description: Organization or Environment not found summary: ResumeEnvironmentSchedule tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/settings: get: description: Returns the current settings for a Pulumi ESC environment, including whether deletion protection is enabled. Deletion protection prevents the environment from being deleted until the setting is explicitly disabled. Settings can be modified via the PatchEnvironmentSettings endpoint. operationId: GetEnvironmentSettings parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnvironmentSettings' description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: GetEnvironmentSettings tags: - Environments patch: description: Updates settings for a Pulumi ESC environment using a partial update (patch) approach. Currently supports toggling deletion protection via the deletionProtected field. When deletionProtected is set to true, the environment cannot be deleted until the setting is explicitly disabled. Only the fields included in the request body are modified; omitted fields retain their current values. operationId: PatchEnvironmentSettings parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchEnvironmentSettingsRequest' x-originalParamName: body responses: '200': description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: PatchEnvironmentSettings tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/tags: get: description: Returns a paginated list of user-defined tags for a Pulumi ESC environment. Tags are key-value pairs used for organizing and categorizing environments. Use the after parameter for cursor-based pagination and count to limit the number of results returned. operationId: ListEnvironmentTags_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: Only return results after this value in: query name: after schema: format: int64 type: integer - description: Maximum number of results to return in: query name: count schema: format: int64 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListEnvironmentTagsResponse' description: OK '400': description: Invalid input '404': description: Organization or Environment not found summary: ListEnvironmentTags tags: - Environments post: description: Adds a new user-defined tag to a Pulumi ESC environment. Tags are key-value pairs that provide contextual metadata for organizing and searching environments (e.g., region=us-east-1, team=platform). The tag name and value are provided in the request body. Returns the created EnvironmentTag on success. Returns 409 if a tag with the same name already exists on the environment. operationId: CreateEnvironmentTag_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateEnvironmentTagRequest' x-originalParamName: body responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnvironmentTag' description: OK '400': description: Invalid tag name or value '404': description: environment '409': description: Tag already exists summary: CreateEnvironmentTag tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/tags/{tagName}: delete: description: Removes a user-defined tag from a Pulumi ESC environment. The tag is identified by its name in the URL path. Returns 204 on success with no response body. Returns 404 if the tag does not exist on the environment. operationId: DeleteEnvironmentTag_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The environment tag name in: path name: tagName required: true schema: type: string responses: '204': description: No Content '400': description: Invalid tag name or value '404': description: tag '409': description: the environment has changed since it was read summary: DeleteEnvironmentTag tags: - Environments get: description: Returns a single user-defined tag for a Pulumi ESC environment, identified by the tag name in the URL path. The response includes the tag name, value, and metadata. Returns 404 if the tag does not exist on the environment. operationId: GetEnvironmentTag_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The environment tag name in: path name: tagName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnvironmentTag' description: OK '404': description: tag summary: GetEnvironmentTag tags: - Environments patch: description: Modifies the value of an existing user-defined tag on a Pulumi ESC environment. The tag is identified by its name in the URL path. The request body contains the new value for the tag. Returns the updated EnvironmentTag on success. Returns 404 if the tag does not exist on the environment. operationId: UpdateEnvironmentTag_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The environment tag name in: path name: tagName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateEnvironmentTagRequest' x-originalParamName: body responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnvironmentTag' description: OK '400': description: Invalid tag name or value '404': description: environment tag summary: UpdateEnvironmentTag tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/versions: get: description: Returns a paginated list of revisions for a Pulumi ESC environment. Each revision represents an immutable snapshot of the environment definition created when the environment is updated. The response includes revision numbers, timestamps, and the identity of the user who made each change. Use the before parameter to fetch revisions before a specific revision number, and count to limit the number of results returned. operationId: ListEnvironmentRevisions_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: Only return results before this revision in: query name: before schema: format: int64 type: integer - description: Maximum number of results to return in: query name: count schema: format: int64 type: integer responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/EnvironmentRevision' type: array description: successful operation '400': description: invalid query parameter '404': description: environment '409': description: the environment has changed since it was read summary: ListEnvironmentRevisions tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/versions/tags: get: description: Returns a paginated list of revision tags for a Pulumi ESC environment. Revision tags are named references pointing to specific revision numbers (e.g., 'latest', 'prod', 'stable'). They can be used in environment imports and Pulumi stack configuration to pin to a specific version. Use the after parameter for cursor-based pagination and count to limit results. operationId: ListRevisionTags_esc_environments_versions parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: Only return results after this value in: query name: after schema: type: string - description: Maximum number of results to return in: query name: count schema: format: int64 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListEnvironmentRevisionTagsResponse' description: OK '400': description: invalid query parameter '404': description: environment '409': description: the environment has changed since it was read summary: ListRevisionTags tags: - Environments post: description: Creates a new revision tag for a Pulumi ESC environment. Revision tags are named references that point to specific revision numbers, similar to Git tags. They allow pinning a stable reference to a known-good version of an environment. Tagged versions can be used in imports and Pulumi stack configuration (e.g., myproject/env@prod) to ensure stable references unaffected by subsequent changes. The built-in 'latest' tag always points to the most recent revision. operationId: CreateRevisionTag_esc_environments_versions_tags parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateEnvironmentRevisionTagRequest' x-originalParamName: body responses: '204': description: No Content '400': description: Invalid revision tag '404': description: environment '409': description: the environment has changed since it was read summary: CreateRevisionTag tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/versions/tags/{tagName}: delete: description: Deletes a named revision tag from a Pulumi ESC environment. The tag is identified by its name in the URL path. After deletion, any imports or stack configurations referencing this tag will fail to resolve. The built-in 'latest' tag cannot be deleted. Returns 204 on success with no response body. operationId: DeleteRevisionTag_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision tag name in: path name: tagName required: true schema: type: string responses: '204': description: No Content '400': description: Invalid revision tag '404': description: revision tag '409': description: the environment has changed since it was read summary: DeleteRevisionTag tags: - Environments get: description: Returns the details of a specific revision tag for a Pulumi ESC environment. The tag is identified by its name in the URL path. The response includes the tag name and the revision number it points to. Returns 404 if the tag does not exist. operationId: ReadRevisionTag_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision tag name in: path name: tagName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnvironmentRevisionTag' description: OK '400': description: Bad request '404': description: revision tag '409': description: the environment has changed since it was read summary: ReadRevisionTag tags: - Environments patch: description: Updates an existing revision tag for a Pulumi ESC environment to point to a different revision number. The tag is identified by its name in the URL path. The request body specifies the new revision number. This allows advancing or rolling back a named reference (e.g., moving the 'prod' tag to a newer or older revision). Returns 204 on success with no response body. operationId: UpdateRevisionTag_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision tag name in: path name: tagName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateEnvironmentRevisionTagRequest' x-originalParamName: body responses: '204': description: No Content '400': description: Invalid revision tag '404': description: revision tag '409': description: the environment has changed since it was read summary: UpdateRevisionTag tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/versions/{version}: get: description: Returns the YAML definition of a Pulumi ESC environment. The response is in application/x-yaml format and includes the environment's imports, values, provider configurations, and function invocations. Secrets remain in their encrypted form (use DecryptEnvironment to see plaintext secrets, or OpenEnvironment to fully resolve all dynamic values). When a version path parameter is provided, returns the definition for that specific revision. operationId: ReadEnvironment_esc_environments_versions parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision version number in: path name: version required: true schema: type: string responses: '200': content: application/x-yaml: schema: type: string description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: ReadEnvironment tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/versions/{version}/check: post: description: Checks a Pulumi ESC environment definition for errors without applying changes. This validates the YAML definition including imports, provider configurations, function invocations (fn::open, fn::secret, etc.), and interpolation expressions. When the showSecrets query parameter is set to true, secret values are returned in plaintext in the response. The response includes any diagnostics or validation errors found in the environment definition. Supports optimistic concurrency control via ETag headers. operationId: CheckEnvironment_esc_environments_versions parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision version number in: path name: version required: true schema: type: string - description: Whether to show secret values in plaintext in: query name: showSecrets schema: type: boolean responses: '200': content: application/json: schema: $ref: '#/components/schemas/CheckEnvironmentResponse' description: OK '400': description: invalid query parameter '404': description: revision tag '409': description: the environment has changed since it was read summary: CheckEnvironment tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/versions/{version}/decrypt: get: description: Reads the YAML definition for a Pulumi ESC environment with all static secrets decrypted and shown in plaintext. Unlike the standard ReadEnvironment endpoint which returns secrets in their encrypted form, this endpoint resolves fn::secret values to their plaintext representations. The response is returned in application/x-yaml format. This does not resolve dynamic provider values (fn::open); use OpenEnvironment for full resolution. Requires environment open permission. operationId: DecryptEnvironment_esc_environments_versions parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision version number in: path name: version required: true schema: type: string responses: '200': content: application/x-yaml: schema: type: string description: OK '400': description: Invalid input '404': description: Organization or Environment not found summary: DecryptEnvironment tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/versions/{version}/open: post: description: Opens a Pulumi ESC environment, fully resolving all dynamic values, provider integrations (fn::open), interpolation expressions, and secrets. This initiates an access session that evaluates the complete environment definition including all imports. The duration parameter specifies how long the session remains valid using Go duration format (e.g., '2h45m', '300ms'). Returns an OpenEnvironmentResponse containing the session ID and any diagnostics. Use the session ID with ReadOpenEnvironment to retrieve the resolved values. operationId: OpenEnvironment_esc_environments_versions parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision version number in: path name: version required: true schema: type: string - description: 'The session duration, using Go time units: ns, us, ms, s, m, h (e.g. ''2h'')' in: query name: duration schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenEnvironmentResponse' description: OK '400': description: invalid query parameter '404': description: revision tag '409': description: the environment has changed since it was read summary: OpenEnvironment tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/versions/{version}/referrers: get: description: Returns a paginated list of entities that reference a Pulumi ESC environment, including other environments that import it and Pulumi stacks that use it in their configuration. The count parameter limits results (range 1-500). Set allRevisions to true to include references across all revisions, and latestStackVersionOnly to true to return only the latest stack version for each referring stack. Use continuationToken for pagination. operationId: ListEnvironmentReferrers_esc_environments_versions parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision version number in: path name: version required: true schema: type: string - description: Whether to include all revisions in: query name: allRevisions schema: type: boolean - description: Continuation token for paginated results in: query name: continuationToken schema: type: string - description: Maximum number of results to return in: query name: count schema: format: int64 type: integer - description: Whether to return only the latest stack version in: query name: latestStackVersionOnly schema: type: boolean responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListEnvironmentReferrersResponse' description: OK '400': description: count must be in the range [1, 500] '404': description: environment '409': description: the environment has changed since it was read summary: ListEnvironmentReferrers tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/versions/{version}/retract: post: description: Retracts a specific revision of a Pulumi ESC environment, marking it as withdrawn. A retracted revision remains in the history but is no longer considered a valid version for use. The request body may include a reason for the retraction. The revision is identified by the version path parameter. Returns 204 on success with no response body. operationId: RetractEnvironmentRevision_esc_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision version number in: path name: version required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/RetractEnvironmentRevisionRequest' x-originalParamName: body responses: '204': description: No Content '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: RetractEnvironmentRevision tags: - Environments /api/esc/environments/{orgName}/{projectName}/{envName}/versions/{version}/tags: get: description: Returns a paginated list of revision tags for a Pulumi ESC environment. Revision tags are named references pointing to specific revision numbers (e.g., 'latest', 'prod', 'stable'). They can be used in environment imports and Pulumi stack configuration to pin to a specific version. Use the after parameter for cursor-based pagination and count to limit results. operationId: ListRevisionTags_esc_environments_versions2 parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision version number in: path name: version required: true schema: type: string - description: Only return results after this value in: query name: after schema: type: string - description: Maximum number of results to return in: query name: count schema: format: int64 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListEnvironmentRevisionTagsResponse' description: OK '400': description: invalid query parameter '404': description: environment '409': description: the environment has changed since it was read summary: ListRevisionTags tags: - Environments /api/esc/providers: get: description: Returns a list of all available Pulumi ESC providers. Providers are integrations that dynamically retrieve configuration and secrets from external sources (e.g., AWS, Azure, Google Cloud, HashiCorp Vault, 1Password) via the fn::open function in environment definitions. Optionally filter by organization using the orgName query parameter to see only providers available to that organization. operationId: ListProviders_esc parameters: - description: Filter providers available to this organization in: query name: orgName schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListProvidersResponse' description: OK summary: ListProviders tags: - Environments /api/esc/providers/{providerName}/schema: get: description: Returns the JSON schema for a Pulumi ESC provider. Providers are integrations that dynamically retrieve configuration and secrets from external sources such as AWS, Azure, Google Cloud, HashiCorp Vault, and others via fn::open. The schema describes the provider's input parameters, output structure, and configuration options. The provider is identified by name in the URL path. operationId: GetProviderSchema_esc parameters: - description: The provider name in: path name: providerName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProviderSchema' description: OK '400': description: Bad request '404': description: provider '409': description: the environment has changed since it was read summary: GetProviderSchema tags: - Environments /api/esc/rotators: get: description: Returns a list of all available Pulumi ESC secret rotators. Rotators are integrations that automatically rotate secrets in external systems via the fn::rotate function in environment definitions. Optionally filter by organization using the orgName query parameter to see only rotators available to that organization. operationId: ListRotators parameters: - description: Filter rotators available to this organization in: query name: orgName schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListRotatorsResponse' description: OK summary: ListRotators tags: - Environments /api/esc/rotators/{rotatorName}/schema: get: description: Returns the JSON schema for a Pulumi ESC secret rotator. Rotators are integrations that automatically rotate secrets in external systems via fn::rotate. The schema describes the rotator's input parameters, output structure, and configuration options. The rotator is identified by name in the URL path. operationId: GetRotatorSchema parameters: - description: The rotator name in: path name: rotatorName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProviderSchema' description: OK '400': description: Bad request '404': description: rotator '409': description: the environment has changed since it was read summary: GetRotatorSchema tags: - Environments /api/preview/environments: get: deprecated: true description: Returns a paginated list of all Pulumi ESC environments accessible to the authenticated user across all organizations they belong to. Each entry includes the organization, project, environment name, and creation/modification timestamps. Use the organization query parameter to filter results to a specific organization. Use continuationToken for pagination through large result sets. operationId: ListEnvironments_preview parameters: - description: Continuation token for paginated results in: query name: continuationToken schema: type: string - description: Whether to include referrer metadata. Defaults to false. in: query name: includeReferrerMetadata schema: type: boolean - description: Maximum number of results for pagination in: query name: maxResults schema: format: int64 type: integer - description: Filter results to this organization name in: query name: organization schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListEnvironmentsResponse' description: OK '400': description: Invalid continuation token summary: ListEnvironments tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: ListEnvironments_esc Visibility: Preview /api/preview/environments/providers: get: deprecated: true description: Returns a list of all available Pulumi ESC providers. Providers are integrations that dynamically retrieve configuration and secrets from external sources (e.g., AWS, Azure, Google Cloud, HashiCorp Vault, 1Password) via the fn::open function in environment definitions. Optionally filter by organization using the orgName query parameter to see only providers available to that organization. operationId: ListProviders_preview_environments parameters: - description: Filter providers available to this organization in: query name: orgName schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListProvidersResponse' description: OK summary: ListProviders tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: ListProviders_esc Visibility: Preview /api/preview/environments/providers/{providerName}/schema: get: deprecated: true description: Returns the JSON schema for a Pulumi ESC provider. Providers are integrations that dynamically retrieve configuration and secrets from external sources such as AWS, Azure, Google Cloud, HashiCorp Vault, and others via fn::open. The schema describes the provider's input parameters, output structure, and configuration options. The provider is identified by name in the URL path. operationId: GetProviderSchema_preview_environments parameters: - description: The provider name in: path name: providerName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProviderSchema' description: OK '400': description: Bad request '404': description: provider '409': description: the environment has changed since it was read summary: GetProviderSchema tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: GetProviderSchema_esc Visibility: Preview /api/preview/environments/{orgName}: get: deprecated: true description: Returns a paginated list of all Pulumi ESC environments within a specific organization. Each entry includes the project, environment name, and creation/modification timestamps. Results are scoped to the organization specified in the URL path. Use continuationToken for pagination through large result sets. operationId: ListOrgEnvironments_preview parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: Continuation token for paginated results in: query name: continuationToken schema: type: string - description: Whether to include referrer metadata. Defaults to false. in: query name: includeReferrerMetadata schema: type: boolean - description: Maximum number of results for pagination in: query name: maxResults schema: format: int64 type: integer - description: The custom role to use for listing environments in: query name: roleID schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListEnvironmentsResponse' description: OK '400': description: invalid query parameter '404': description: environment '409': description: the environment has changed since it was read summary: ListOrgEnvironments tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: ListOrgEnvironments_esc Visibility: Preview /api/preview/environments/{orgName}/tags: get: deprecated: true description: Returns a map of all unique tag names and their distinct values across all Pulumi ESC environments in the organization. The response is a map where each key is a tag name and the value is a list of all distinct values for that tag across all environments. This is useful for building tag-based filtering or discovery UIs. operationId: ListAllEnvironmentTags_preview parameters: - description: The organization name in: path name: orgName required: true schema: type: string responses: '200': content: application/json: schema: additionalProperties: items: type: string type: array type: object description: successful operation '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: ListAllEnvironmentTags tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: ListAllEnvironmentTags_esc Visibility: Preview /api/preview/environments/{orgName}/yaml/check: post: deprecated: true description: Checks a raw YAML environment definition for errors without creating or modifying any environment. The YAML definition is provided in the request body and validated for correctness, including imports, provider configurations, function invocations, and interpolation expressions. When the showSecrets query parameter is set to true, secret values are returned in plaintext in the response. This is useful for validating environment definitions before applying them. operationId: CheckYAML_preview parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: Whether to show secret values in plaintext in: query name: showSecrets schema: type: boolean responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnvironmentResponse' description: OK '400': description: invalid query parameter '404': description: environment '409': description: the environment has changed since it was read summary: CheckYAML tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: CheckYAML_esc Visibility: Preview /api/preview/environments/{orgName}/yaml/open: post: deprecated: true description: Opens an anonymous Pulumi ESC environment from a raw YAML definition provided in the request body, fully resolving all dynamic values, provider integrations, and secrets. Unlike OpenEnvironment, this does not require a pre-existing environment to be stored. The duration parameter specifies how long the session remains valid using Go duration format. Returns an OpenEnvironmentResponse containing the session ID. Use the session ID with ReadAnonymousOpenEnvironment to retrieve the resolved values. operationId: OpenYAML_preview parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: 'The session duration, using Go time units: ns, us, ms, s, m, h (e.g. ''2h'')' in: query name: duration schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenEnvironmentResponse' description: OK '400': description: invalid query parameter '404': description: environment '409': description: the environment has changed since it was read summary: OpenYAML tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: OpenYAML_esc Visibility: Preview /api/preview/environments/{orgName}/yaml/open/{openSessionID}: get: deprecated: true description: Reads the fully resolved values from an anonymous open environment session that was created via the OpenYAML endpoint. The openSessionID path parameter must match a valid, non-expired session. The optional property query parameter accepts a dot-separated path to retrieve a specific nested value instead of the entire resolved environment (e.g., 'aws.credentials.accessKeyId'). The response contains the resolved configuration values with secrets decrypted. operationId: ReadAnonymousOpenEnvironment_preview parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The session ID returned from the open environment operation in: path name: openSessionID required: true schema: type: string - description: A dot-separated path to a specific property to retrieve from the environment in: query name: property schema: type: string responses: '200': content: application/json: schema: type: object description: OK '400': description: invalid query parameter '404': description: path '409': description: the environment has changed since it was read summary: ReadAnonymousOpenEnvironment tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: ReadAnonymousOpenEnvironment_esc Visibility: Preview /api/preview/environments/{orgName}/{envName}: delete: deprecated: true description: Permanently deletes a Pulumi ESC environment and all of its revision history, tags, and associated configuration. This operation is blocked if deletion protection is enabled on the environment (see PatchEnvironmentSettings). Enterprise and Business Critical edition organizations may be able to restore deleted environments within a retention window. Returns 409 if the environment is deletion-protected or has been modified since it was last read. operationId: DeleteEnvironment_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: DeleteEnvironment tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: DeleteEnvironment_esc_environments Visibility: Preview get: deprecated: true description: Returns the YAML definition of a Pulumi ESC environment. The response is in application/x-yaml format and includes the environment's imports, values, provider configurations, and function invocations. Secrets remain in their encrypted form (use DecryptEnvironment to see plaintext secrets, or OpenEnvironment to fully resolve all dynamic values). When a version path parameter is provided, returns the definition for that specific revision. operationId: ReadEnvironment_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': content: application/x-yaml: schema: type: string description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: ReadEnvironment tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: ReadEnvironment_esc_environments Visibility: Preview head: deprecated: true description: Returns the ETag header for a Pulumi ESC environment without returning the full definition body. This is used for lightweight existence checks and for obtaining the current ETag value for optimistic concurrency control. The ETag should be included in subsequent update requests via the If-Match header to prevent concurrent modification conflicts. Returns 404 if the environment does not exist. operationId: HeadEnvironment_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': content: application/json: schema: type: object description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: HeadEnvironment tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: HeadEnvironment_esc_environments Visibility: Preview patch: deprecated: true description: Validates and updates the YAML definition of a Pulumi ESC environment. The request body must contain the complete environment definition in application/x-yaml format, including imports, values, provider configurations, and function invocations. Each successful update creates a new immutable revision in the environment's version history. Supports optimistic concurrency control via ETag/If-Match headers; returns 409 if the environment has been modified since it was last read. operationId: UpdateEnvironment_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string requestBody: content: application/x-yaml: schema: type: string x-originalParamName: body responses: '200': content: application/json: schema: $ref: '#/components/schemas/UpdateEnvironmentResponse' description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: UpdateEnvironment tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: UpdateEnvironment_esc_environments Visibility: Preview post: deprecated: true description: Creates a new Pulumi ESC (Environments, Secrets, and Configuration) environment within the specified organization. The request body must include the project name and the environment name. Environment names must be unique within a project and may only contain alphanumeric characters, hyphens, underscores, and periods. The newly created environment starts with an empty YAML definition that can be updated via the UpdateEnvironment endpoint. operationId: CreateEnvironment_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateEnvironmentRequest' x-originalParamName: body responses: '200': description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: CreateEnvironment tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: CreateEnvironment_esc_environments Visibility: Preview /api/preview/environments/{orgName}/{envName}/check: post: deprecated: true description: Checks a Pulumi ESC environment definition for errors without applying changes. This validates the YAML definition including imports, provider configurations, function invocations (fn::open, fn::secret, etc.), and interpolation expressions. When the showSecrets query parameter is set to true, secret values are returned in plaintext in the response. The response includes any diagnostics or validation errors found in the environment definition. Supports optimistic concurrency control via ETag headers. operationId: CheckEnvironment_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: Whether to show secret values in plaintext in: query name: showSecrets schema: type: boolean responses: '200': content: application/json: schema: $ref: '#/components/schemas/CheckEnvironmentResponse' description: OK '400': description: invalid query parameter '404': description: revision tag '409': description: the environment has changed since it was read summary: CheckEnvironment tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: CheckEnvironment_esc_environments Visibility: Preview /api/preview/environments/{orgName}/{envName}/decrypt: get: deprecated: true description: Reads the YAML definition for a Pulumi ESC environment with all static secrets decrypted and shown in plaintext. Unlike the standard ReadEnvironment endpoint which returns secrets in their encrypted form, this endpoint resolves fn::secret values to their plaintext representations. The response is returned in application/x-yaml format. This does not resolve dynamic provider values (fn::open); use OpenEnvironment for full resolution. Requires environment open permission. operationId: DecryptEnvironment_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': content: application/x-yaml: schema: type: string description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: DecryptEnvironment tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: DecryptEnvironment_esc_environments Visibility: Preview /api/preview/environments/{orgName}/{envName}/hooks: get: deprecated: true description: Returns a list of all webhooks configured for a Pulumi ESC environment. Each webhook entry includes its name, destination URL, event filters, format, and active status. Webhooks enable external services to be notified of environment events such as updates and opens. operationId: ListWebhooks_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/WebhookResponse' type: array description: successful operation summary: ListWebhooks tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: ListWebhooks_esc_environments Visibility: Preview post: deprecated: true description: Creates a new webhook for a Pulumi ESC environment. Webhooks allow external services to be notified when environment events occur, such as updates or opens. The request body specifies the webhook configuration including the destination URL, event filters, and format. Returns 400 if the organization name in the request body does not match the URL path parameter. Returns 409 if a webhook with the same name already exists. operationId: CreateWebhook_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Webhook' x-originalParamName: body responses: '201': content: application/json: schema: $ref: '#/components/schemas/WebhookResponse' description: Created '400': description: Organization name from request body doesn't match URL. '409': description: Webhook already exists summary: CreateWebhook tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: CreateWebhook_esc_environments Visibility: Preview /api/preview/environments/{orgName}/{envName}/hooks/{hookName}: delete: deprecated: true description: Deletes a webhook from a Pulumi ESC environment. The webhook is identified by its name in the URL path. After deletion, the external service will no longer receive notifications for environment events. Returns 204 on success with no response body. operationId: DeleteWebhook_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The webhook name in: path name: hookName required: true schema: type: string responses: '204': description: No Content summary: DeleteWebhook tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: DeleteWebhook_esc_environments Visibility: Preview get: deprecated: true description: Returns the configuration and status of a single webhook for a Pulumi ESC environment. The webhook is identified by its name in the URL path. The response includes the webhook's destination URL, event filters, format, and active status. Returns 404 if the webhook does not exist. operationId: GetWebhook_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The webhook name in: path name: hookName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/WebhookResponse' description: OK '404': description: Webhook summary: GetWebhook tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: GetWebhook_esc_environments Visibility: Preview patch: deprecated: true description: Updates the configuration of an existing webhook on a Pulumi ESC environment. The webhook is identified by its name in the URL path. The request body contains the updated webhook configuration including destination URL, event filters, format, and active status. Returns the updated WebhookResponse on success. Returns 400 if an invalid format is specified. operationId: UpdateWebhook_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The webhook name in: path name: hookName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Webhook' x-originalParamName: body responses: '200': content: application/json: schema: $ref: '#/components/schemas/WebhookResponse' description: OK '400': description: '''pulumi_deployments'' format can only be used on stack or environment webhooks.' '404': description: Webhook summary: UpdateWebhook tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: UpdateWebhook_esc_environments Visibility: Preview /api/preview/environments/{orgName}/{envName}/hooks/{hookName}/deliveries: get: deprecated: true description: Returns a list of recent delivery attempts for a specific webhook on a Pulumi ESC environment. Each delivery record includes the HTTP status code, response body, timestamp, and whether the delivery was successful. This is useful for debugging webhook integration issues and verifying that events are being received. operationId: GetWebhookDeliveries_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The webhook name in: path name: hookName required: true schema: type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/WebhookDelivery' type: array description: successful operation summary: GetWebhookDeliveries tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: GetWebhookDeliveries_esc_environments Visibility: Preview /api/preview/environments/{orgName}/{envName}/hooks/{hookName}/deliveries/{event}/redeliver: post: deprecated: true description: Triggers the Pulumi Service to redeliver a specific event to a webhook on a Pulumi ESC environment. This is useful for resending events that the webhook endpoint failed to process on the initial delivery attempt (e.g., due to temporary downtime or errors). The event is identified by its delivery event ID in the URL path. Returns the new WebhookDelivery record for the redelivery. operationId: RedeliverWebhookEvent_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The webhook name in: path name: hookName required: true schema: type: string - description: The webhook delivery event ID to redeliver in: path name: event required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/WebhookDelivery' description: OK '404': description: Webhook summary: RedeliverWebhookEvent tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: RedeliverWebhookEvent_esc_environments Visibility: Preview /api/preview/environments/{orgName}/{envName}/hooks/{hookName}/ping: post: deprecated: true description: Sends a test ping event to a webhook on a Pulumi ESC environment to verify that the webhook endpoint is reachable and functioning correctly. This bypasses the normal message queue and issues the request directly to the webhook URL. Returns the WebhookDelivery record containing the HTTP status code and response from the target endpoint. operationId: PingWebhook_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The webhook name in: path name: hookName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/WebhookDelivery' description: OK '404': description: Webhook summary: PingWebhook tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: PingWebhook_esc_environments Visibility: Preview /api/preview/environments/{orgName}/{envName}/metadata: get: deprecated: true description: Returns metadata for a Pulumi ESC environment, including the calling user's effective permission level (read, open, write, admin), creation and modification timestamps, the environment's project, and other administrative information. This is useful for determining what actions the current user can perform on the environment before attempting those operations. operationId: GetEnvironmentMetadata_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnvironmentMetadata' description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: GetEnvironmentMetadata tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: GetEnvironmentMetadata_esc_environments Visibility: Preview /api/preview/environments/{orgName}/{envName}/open: post: deprecated: true description: Opens a Pulumi ESC environment, fully resolving all dynamic values, provider integrations (fn::open), interpolation expressions, and secrets. This initiates an access session that evaluates the complete environment definition including all imports. The duration parameter specifies how long the session remains valid using Go duration format (e.g., '2h45m', '300ms'). Returns an OpenEnvironmentResponse containing the session ID and any diagnostics. Use the session ID with ReadOpenEnvironment to retrieve the resolved values. operationId: OpenEnvironment_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: 'The session duration, using Go time units: ns, us, ms, s, m, h (e.g. ''2h'')' in: query name: duration schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenEnvironmentResponse' description: OK '400': description: invalid query parameter '404': description: revision tag '409': description: the environment has changed since it was read summary: OpenEnvironment tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: OpenEnvironment_esc_environments Visibility: Preview /api/preview/environments/{orgName}/{envName}/open/{openSessionID}: get: deprecated: true description: Reads the fully resolved values from an open environment session that was created via the OpenEnvironment endpoint. The openSessionID path parameter must match a valid, non-expired session. The optional property query parameter accepts a dot-separated path to retrieve a specific nested value instead of the entire resolved environment (e.g., 'aws.credentials.accessKeyId'). The response contains all resolved configuration values with secrets decrypted and provider-sourced values fully evaluated. operationId: ReadOpenEnvironment_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The session ID returned from the open environment operation in: path name: openSessionID required: true schema: type: string - description: A dot-separated path to a specific property to retrieve from the environment in: query name: property schema: type: string responses: '200': content: application/json: schema: type: object description: OK '400': description: invalid query parameter '404': description: path '409': description: the environment has changed since it was read summary: ReadOpenEnvironment tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: ReadOpenEnvironment_esc_environments Visibility: Preview /api/preview/environments/{orgName}/{envName}/tags: get: deprecated: true description: Returns a paginated list of user-defined tags for a Pulumi ESC environment. Tags are key-value pairs used for organizing and categorizing environments. Use the after parameter for cursor-based pagination and count to limit the number of results returned. operationId: ListEnvironmentTags_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: Only return results after this value in: query name: after schema: format: int64 type: integer - description: Maximum number of results to return in: query name: count schema: format: int64 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListEnvironmentTagsResponse' description: OK '400': description: invalid query parameter '404': description: environment '409': description: the environment has changed since it was read summary: ListEnvironmentTags tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: ListEnvironmentTags_esc_environments Visibility: Preview post: deprecated: true description: Adds a new user-defined tag to a Pulumi ESC environment. Tags are key-value pairs that provide contextual metadata for organizing and searching environments (e.g., region=us-east-1, team=platform). The tag name and value are provided in the request body. Returns the created EnvironmentTag on success. Returns 409 if a tag with the same name already exists on the environment. operationId: CreateEnvironmentTag_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateEnvironmentTagRequest' x-originalParamName: body responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnvironmentTag' description: OK '400': description: Invalid tag name or value '404': description: environment '409': description: Tag already exists summary: CreateEnvironmentTag tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: CreateEnvironmentTag_esc_environments Visibility: Preview /api/preview/environments/{orgName}/{envName}/tags/{tagName}: delete: deprecated: true description: Removes a user-defined tag from a Pulumi ESC environment. The tag is identified by its name in the URL path. Returns 204 on success with no response body. Returns 404 if the tag does not exist on the environment. operationId: DeleteEnvironmentTag_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The environment tag name in: path name: tagName required: true schema: type: string responses: '204': description: No Content '400': description: Invalid tag name or value '404': description: tag '409': description: the environment has changed since it was read summary: DeleteEnvironmentTag tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: DeleteEnvironmentTag_esc_environments Visibility: Preview get: deprecated: true description: Returns a single user-defined tag for a Pulumi ESC environment, identified by the tag name in the URL path. The response includes the tag name, value, and metadata. Returns 404 if the tag does not exist on the environment. operationId: GetEnvironmentTag_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The environment tag name in: path name: tagName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnvironmentTag' description: OK '404': description: tag summary: GetEnvironmentTag tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: GetEnvironmentTag_esc_environments Visibility: Preview patch: deprecated: true description: Modifies the value of an existing user-defined tag on a Pulumi ESC environment. The tag is identified by its name in the URL path. The request body contains the new value for the tag. Returns the updated EnvironmentTag on success. Returns 404 if the tag does not exist on the environment. operationId: UpdateEnvironmentTag_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The environment tag name in: path name: tagName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateEnvironmentTagRequest' x-originalParamName: body responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnvironmentTag' description: OK '400': description: Invalid tag name or value '404': description: environment tag '409': description: the environment has changed since it was read summary: UpdateEnvironmentTag tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: UpdateEnvironmentTag_esc_environments Visibility: Preview /api/preview/environments/{orgName}/{envName}/versions: get: deprecated: true description: Returns a paginated list of revisions for a Pulumi ESC environment. Each revision represents an immutable snapshot of the environment definition created when the environment is updated. The response includes revision numbers, timestamps, and the identity of the user who made each change. Use the before parameter to fetch revisions before a specific revision number, and count to limit the number of results returned. operationId: ListEnvironmentRevisions_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: Only return results before this revision in: query name: before schema: format: int64 type: integer - description: Maximum number of results to return in: query name: count schema: format: int64 type: integer responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/EnvironmentRevision' type: array description: successful operation '400': description: invalid query parameter '404': description: environment '409': description: the environment has changed since it was read summary: ListEnvironmentRevisions tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: ListEnvironmentRevisions_esc_environments Visibility: Preview /api/preview/environments/{orgName}/{envName}/versions/tags: get: deprecated: true description: Returns a paginated list of revision tags for a Pulumi ESC environment. Revision tags are named references pointing to specific revision numbers (e.g., 'latest', 'prod', 'stable'). They can be used in environment imports and Pulumi stack configuration to pin to a specific version. Use the after parameter for cursor-based pagination and count to limit results. operationId: ListRevisionTags_preview_environments_versions parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: Only return results after this value in: query name: after schema: type: string - description: Maximum number of results to return in: query name: count schema: format: int64 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListEnvironmentRevisionTagsResponse' description: OK '400': description: invalid query parameter '404': description: environment '409': description: the environment has changed since it was read summary: ListRevisionTags tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: ListRevisionTags_esc_environments_versions Visibility: Preview /api/preview/environments/{orgName}/{envName}/versions/tags/{tagName}: delete: deprecated: true description: Deletes a named revision tag from a Pulumi ESC environment. The tag is identified by its name in the URL path. After deletion, any imports or stack configurations referencing this tag will fail to resolve. The built-in 'latest' tag cannot be deleted. Returns 204 on success with no response body. operationId: DeleteRevisionTag_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision tag name in: path name: tagName required: true schema: type: string responses: '204': description: No Content '400': description: Invalid revision tag '404': description: revision tag '409': description: the environment has changed since it was read summary: DeleteRevisionTag tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: DeleteRevisionTag_esc_environments Visibility: Preview get: deprecated: true description: Returns the details of a specific revision tag for a Pulumi ESC environment. The tag is identified by its name in the URL path. The response includes the tag name and the revision number it points to. Returns 404 if the tag does not exist. operationId: ReadRevisionTag_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision tag name in: path name: tagName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/EnvironmentRevisionTag' description: OK '400': description: Bad request '404': description: revision tag '409': description: the environment has changed since it was read summary: ReadRevisionTag tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: ReadRevisionTag_esc_environments Visibility: Preview patch: deprecated: true description: Updates an existing revision tag for a Pulumi ESC environment to point to a different revision number. The tag is identified by its name in the URL path. The request body specifies the new revision number. This allows advancing or rolling back a named reference (e.g., moving the 'prod' tag to a newer or older revision). Returns 204 on success with no response body. operationId: UpdateRevisionTag_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision tag name in: path name: tagName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateEnvironmentRevisionTagRequest' x-originalParamName: body responses: '204': description: No Content '400': description: Invalid revision tag '404': description: revision tag '409': description: the environment has changed since it was read summary: UpdateRevisionTag tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: UpdateRevisionTag_esc_environments Visibility: Preview post: deprecated: true description: Creates a new revision tag for a Pulumi ESC environment. Revision tags are named references that point to specific revision numbers, similar to Git tags. They allow pinning a stable reference to a known-good version of an environment. Tagged versions can be used in imports and Pulumi stack configuration (e.g., myproject/env@prod) to ensure stable references unaffected by subsequent changes. The built-in 'latest' tag always points to the most recent revision. operationId: CreateRevisionTag_preview_environments_versions_tags parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision tag name in: path name: tagName required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateEnvironmentRevisionTagRequest' x-originalParamName: body responses: '204': description: No Content '400': description: Invalid revision tag '404': description: environment '409': description: the environment has changed since it was read summary: CreateRevisionTag tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: CreateRevisionTag_esc_environments_versions_tags Visibility: Preview /api/preview/environments/{orgName}/{envName}/versions/{version}: get: deprecated: true description: Returns the YAML definition of a Pulumi ESC environment. The response is in application/x-yaml format and includes the environment's imports, values, provider configurations, and function invocations. Secrets remain in their encrypted form (use DecryptEnvironment to see plaintext secrets, or OpenEnvironment to fully resolve all dynamic values). When a version path parameter is provided, returns the definition for that specific revision. operationId: ReadEnvironment_preview_environments_versions parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision version number in: path name: version required: true schema: type: string responses: '200': content: application/x-yaml: schema: type: string description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: ReadEnvironment tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: ReadEnvironment_esc_environments_versions Visibility: Preview /api/preview/environments/{orgName}/{envName}/versions/{version}/check: post: deprecated: true description: Checks a Pulumi ESC environment definition for errors without applying changes. This validates the YAML definition including imports, provider configurations, function invocations (fn::open, fn::secret, etc.), and interpolation expressions. When the showSecrets query parameter is set to true, secret values are returned in plaintext in the response. The response includes any diagnostics or validation errors found in the environment definition. Supports optimistic concurrency control via ETag headers. operationId: CheckEnvironment_preview_environments_versions parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision version number in: path name: version required: true schema: type: string - description: Whether to show secret values in plaintext in: query name: showSecrets schema: type: boolean responses: '200': content: application/json: schema: $ref: '#/components/schemas/CheckEnvironmentResponse' description: OK '400': description: invalid query parameter '404': description: revision tag '409': description: the environment has changed since it was read summary: CheckEnvironment tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: CheckEnvironment_esc_environments_versions Visibility: Preview /api/preview/environments/{orgName}/{envName}/versions/{version}/decrypt: get: deprecated: true description: Reads the YAML definition for a Pulumi ESC environment with all static secrets decrypted and shown in plaintext. Unlike the standard ReadEnvironment endpoint which returns secrets in their encrypted form, this endpoint resolves fn::secret values to their plaintext representations. The response is returned in application/x-yaml format. This does not resolve dynamic provider values (fn::open); use OpenEnvironment for full resolution. Requires environment open permission. operationId: DecryptEnvironment_preview_environments_versions parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision version number in: path name: version required: true schema: type: string responses: '200': content: application/x-yaml: schema: type: string description: OK '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: DecryptEnvironment tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: DecryptEnvironment_esc_environments_versions Visibility: Preview /api/preview/environments/{orgName}/{envName}/versions/{version}/open: post: deprecated: true description: Opens a Pulumi ESC environment, fully resolving all dynamic values, provider integrations (fn::open), interpolation expressions, and secrets. This initiates an access session that evaluates the complete environment definition including all imports. The duration parameter specifies how long the session remains valid using Go duration format (e.g., '2h45m', '300ms'). Returns an OpenEnvironmentResponse containing the session ID and any diagnostics. Use the session ID with ReadOpenEnvironment to retrieve the resolved values. operationId: OpenEnvironment_preview_environments_versions parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision version number in: path name: version required: true schema: type: string - description: 'The session duration, using Go time units: ns, us, ms, s, m, h (e.g. ''2h'')' in: query name: duration schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenEnvironmentResponse' description: OK '400': description: invalid query parameter '404': description: revision tag '409': description: the environment has changed since it was read summary: OpenEnvironment tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: OpenEnvironment_esc_environments_versions Visibility: Preview /api/preview/environments/{orgName}/{envName}/versions/{version}/referrers: get: deprecated: true description: Returns a paginated list of entities that reference a Pulumi ESC environment, including other environments that import it and Pulumi stacks that use it in their configuration. The count parameter limits results (range 1-500). Set allRevisions to true to include references across all revisions, and latestStackVersionOnly to true to return only the latest stack version for each referring stack. Use continuationToken for pagination. operationId: ListEnvironmentReferrers_preview_environments_versions parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision version number in: path name: version required: true schema: type: string - description: Whether to include all revisions in: query name: allRevisions schema: type: boolean - description: Continuation token for paginated results in: query name: continuationToken schema: type: string - description: Maximum number of results to return in: query name: count schema: format: int64 type: integer - description: Whether to return only the latest stack version in: query name: latestStackVersionOnly schema: type: boolean responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListEnvironmentReferrersResponse' description: OK '400': description: count must be in the range [1, 500] '404': description: environment '409': description: the environment has changed since it was read summary: ListEnvironmentReferrers tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: ListEnvironmentReferrers_esc_environments_versions Visibility: Preview /api/preview/environments/{orgName}/{envName}/versions/{version}/retract: post: deprecated: true description: Retracts a specific revision of a Pulumi ESC environment, marking it as withdrawn. A retracted revision remains in the history but is no longer considered a valid version for use. The request body may include a reason for the retraction. The revision is identified by the version path parameter. Returns 204 on success with no response body. operationId: RetractEnvironmentRevision_preview_environments parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision version number in: path name: version required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/RetractEnvironmentRevisionRequest' x-originalParamName: body responses: '204': description: No Content '400': description: Bad request '404': description: environment '409': description: the environment has changed since it was read summary: RetractEnvironmentRevision tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: RetractEnvironmentRevision_esc_environments Visibility: Preview /api/preview/environments/{orgName}/{envName}/versions/{version}/tags: get: deprecated: true description: Returns a paginated list of revision tags for a Pulumi ESC environment. Revision tags are named references pointing to specific revision numbers (e.g., 'latest', 'prod', 'stable'). They can be used in environment imports and Pulumi stack configuration to pin to a specific version. Use the after parameter for cursor-based pagination and count to limit results. operationId: ListRevisionTags_preview_environments_versions2 parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The revision version number in: path name: version required: true schema: type: string - description: Only return results after this value in: query name: after schema: type: string - description: Maximum number of results to return in: query name: count schema: format: int64 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListEnvironmentRevisionTagsResponse' description: OK '400': description: invalid query parameter '404': description: environment '409': description: the environment has changed since it was read summary: ListRevisionTags tags: - Environments x-pulumi-route-property: Deprecated: true SupersededBy: ListRevisionTags_esc_environments_versions2 Visibility: Preview /api/preview/esc/environments/{orgName}/{projectName}/{envName}/drafts: post: description: Creates a new draft change request for a Pulumi ESC environment. Drafts allow proposing changes to an environment definition that can be reviewed and approved before being applied. This is part of the approvals workflow for environments. Returns a ChangeRequestRef containing the draft identifier. Requires the Approvals feature to be enabled for the organization. operationId: CreateEnvironmentDraft_preview parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChangeRequestRef' description: OK '400': description: Bad request '404': description: draft '409': description: the environment has changed since it was read summary: CreateEnvironmentDraft tags: - Environments x-pulumi-route-property: Visibility: Preview /api/preview/esc/environments/{orgName}/{projectName}/{envName}/drafts/{changeRequestID}: get: description: Reads the YAML definition for a draft version of a Pulumi ESC environment. Drafts are proposed changes created as part of the approvals workflow. The draft is identified by the changeRequestID path parameter. An optional revision query parameter can target a specific base revision. The response is returned in application/x-yaml format. Requires the Approvals feature to be enabled. operationId: ReadEnvironmentDraft_preview parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The change request ID in: path name: changeRequestID required: true schema: type: string - description: The environment revision number to target in: query name: revision schema: format: int64 type: integer responses: '200': content: application/x-yaml: schema: type: string description: OK '400': description: Invalid input summary: ReadEnvironmentDraft tags: - Environments x-pulumi-route-property: Visibility: Preview patch: description: Updates the YAML definition of an existing draft change request for a Pulumi ESC environment. The draft is identified by the changeRequestID path parameter. The request body contains the updated YAML definition. Returns a ChangeRequestRef on success. Requires the Approvals feature to be enabled for the organization. operationId: UpdateEnvironmentDraft_preview parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The change request ID in: path name: changeRequestID required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChangeRequestRef' description: OK '400': description: Bad request '404': description: draft '409': description: the environment has changed since it was read summary: UpdateEnvironmentDraft tags: - Environments x-pulumi-route-property: Visibility: Preview /api/preview/esc/environments/{orgName}/{projectName}/{envName}/drafts/{changeRequestID}/open: post: description: Opens a draft version of a Pulumi ESC environment, fully resolving all dynamic values, provider integrations, and secrets for the proposed changes. The duration parameter specifies how long the open session remains valid using Go duration format (e.g., '2h', '30m'). An optional revision parameter can target a specific base revision. Returns an OpenEnvironmentResponse containing the session ID for subsequent reads. Requires the Approvals feature. operationId: OpenEnvironmentDraft_preview parameters: - description: The organization name in: path name: orgName required: true schema: type: string - description: The project name in: path name: projectName required: true schema: type: string - description: The environment name in: path name: envName required: true schema: type: string - description: The change request ID in: path name: changeRequestID required: true schema: type: string - description: 'The session duration, using Go time units: ns, us, ms, s, m, h (e.g. ''2h'')' in: query name: duration schema: type: string - description: The environment revision number to target in: query name: revision schema: format: int64 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenEnvironmentResponse' description: OK '400': description: invalid query parameter '404': description: Change Request '409': description: the environment has changed since it was read summary: OpenEnvironmentDraft tags: - Environments x-pulumi-route-property: Visibility: Preview components: schemas: EscTrace: description: Trace holds information about the expression and base of a value. properties: base: $ref: '#/components/schemas/EscValue' description: Base is the base value with which a value was merged. x-order: 2 def: $ref: '#/components/schemas/EscRange' description: Def is the range of the expression that computed a value. x-order: 1 required: - def type: object EscSchemaSchema: description: EscSchemaSchema represents a JSON Schema used to describe the shape of environment values. properties: _defs: additionalProperties: $ref: '#/components/schemas/EscSchemaSchema' description: Schema definitions that can be referenced by $ref. type: object x-order: 1 _ref: description: A JSON reference to a schema definition. type: string x-order: 2 additionalProperties: $ref: '#/components/schemas/EscSchemaSchema' description: The schema for additional object properties. x-order: 7 anyOf: description: A list of schemas, any of which the value must match. items: $ref: '#/components/schemas/EscSchemaSchema' type: array x-order: 3 const: description: A constant value the instance must equal. type: object x-order: 10 default: description: The default value for the schema. type: object x-order: 29 dependentRequired: additionalProperties: items: type: string type: array description: A map of property names to lists of properties they depend on. type: object x-order: 26 deprecated: description: Whether the schema is deprecated. type: boolean x-order: 30 description: description: A human-readable explanation of the schema's purpose (JSON Schema annotation). type: string x-order: 28 enum: description: A list of allowed values. items: type: object type: array x-order: 11 examples: description: Example values for the schema. items: type: object type: array x-order: 31 exclusiveMaximum: description: The maximum allowed value (exclusive). type: string x-order: 14 exclusiveMinimum: description: The minimum allowed value (exclusive). type: string x-order: 16 items: $ref: '#/components/schemas/EscSchemaSchema' description: The schema for array items. x-order: 6 maxItems: description: The maximum number of items in an array. type: string x-order: 20 maxLength: description: The maximum allowed string length. type: string x-order: 17 maxProperties: description: The maximum number of properties in an object. type: string x-order: 23 maximum: description: The maximum allowed value (inclusive). type: string x-order: 13 minItems: description: The minimum number of items in an array. type: string x-order: 21 minLength: description: The minimum allowed string length. type: string x-order: 18 minProperties: description: The minimum number of properties in an object. type: string x-order: 24 minimum: description: The minimum allowed value (inclusive). type: string x-order: 15 multipleOf: description: The value must be a multiple of this number. type: string x-order: 12 oneOf: description: A list of schemas, exactly one of which the value must match. items: $ref: '#/components/schemas/EscSchemaSchema' type: array x-order: 4 pattern: description: A regular expression pattern the string must match. type: string x-order: 19 prefixItems: description: Schemas for the leading items in an array. items: $ref: '#/components/schemas/EscSchemaSchema' type: array x-order: 5 properties: additionalProperties: $ref: '#/components/schemas/EscSchemaSchema' description: Schemas for named object properties. type: object x-order: 8 required: description: The list of required property names. items: type: string type: array x-order: 25 rotateOnly: description: 'Pulumi ESC extension: property paths within this schema that support rotation-only updates.' items: type: string type: array x-order: 33 secret: description: 'Pulumi ESC extension: if true, the value should be treated as sensitive and masked in output.' type: boolean x-order: 32 title: description: A short human-readable label for the schema (JSON Schema annotation). type: string x-order: 27 type: description: The type of the schema (e.g. string, number, object, array, boolean). type: string x-order: 9 uniqueItems: description: Whether array items must be unique. type: boolean x-order: 22 required: - type type: object CreateEnvironmentSecretRotationScheduleRequest: description: 'CreateEnvironmentSecretRotationScheduleRequest defines the request payload that is expected when creating a new environment secret rotation schedule.' properties: environmentPath: description: 'Environment Path specifies a path to a rotated secret to be updated Leave the field blank to rotate ALL rotated secrets in an environment' type: string x-order: 1 required: - environmentPath type: object WebhookResponse: allOf: - $ref: '#/components/schemas/Webhook' - description: WebhookResponse extends Webhook with additional response-only fields. properties: hasSecret: description: 'HasSecret is true if the webhook has a secret. This is used to determine whether to show that there is a secret in the UI.' type: boolean x-order: 1 secretCiphertext: description: 'SecretCiphertext is the ciphertext value of the webhook''s secret. It''s used to check whether the secret was changed by the PSP' type: string x-order: 2 required: - hasSecret - secretCiphertext type: object EnvironmentRevision: description: EnvironmentRevision represents a specific revision of an environment definition. properties: created: description: The timestamp when the revision was created. format: date-time type: string x-order: 2 creatorLogin: description: The login name of the user who created the revision. type: string x-order: 3 creatorName: description: The display name of the user who created the revision. type: string x-order: 4 number: description: A monotonically increasing integer identifying this revision. format: int64 type: integer x-order: 1 retracted: $ref: '#/components/schemas/EnvironmentRevisionRetracted' description: Information about the retraction, if this revision has been retracted. x-order: 6 sourceChangeRequest: $ref: '#/components/schemas/EnvironmentRevisionChangeRequest' description: The change request that produced this revision, if any. x-order: 7 tags: description: The tags associated with this revision. items: type: string type: array x-order: 5 required: - created - number type: object CreateEnvironmentOpenRequest: description: CreateEnvironmentOpenRequest is used to create an environment open request properties: accessDurationSeconds: description: Total duration that the resulting grant can be used to access the environment open endpoint (after first open) format: int64 type: integer x-order: 2 grantExpirationSeconds: description: Time from application of the request until the resulting grant expires format: int64 type: integer x-order: 1 required: - accessDurationSeconds - grantExpirationSeconds type: object EscEvaluatedExecutionContext: description: An EvaluatedExecutionContext contains the result of evaluating an execution context passed to the root environment. properties: properties: additionalProperties: $ref: '#/components/schemas/EscValue' description: Properties contains the detailed values produced by the execution context. type: object x-order: 1 schema: $ref: '#/components/schemas/EscSchemaSchema' description: Schema contains the schema for Properties. x-order: 2 type: object CheckEnvironmentResponse: allOf: - $ref: '#/components/schemas/EscEnvironment' - description: Response body for check environment. properties: diagnostics: description: List of diagnostics items: $ref: '#/components/schemas/EnvironmentDiagnostic' type: array x-order: 1 environmentFunctionSummary: $ref: '#/components/schemas/EnvironmentFunctionSummary' description: The environment function summary x-order: 2 required: - environmentFunctionSummary type: object ListRotatorsResponse: description: Response containing a list of available secret rotators. properties: rotators: description: The list of rotator names items: type: string type: array x-order: 1 required: - rotators type: object EnvironmentSettings: description: EnvironmentSettings contains settings that control the behavior of an environment. properties: deletionProtected: description: Whether the environment is protected from deletion. type: boolean x-order: 1 required: - deletionProtected type: object ListEnvironmentRevisionTagsResponse: description: Response containing a list of environment revision tags. properties: nextToken: description: Token for fetching the next page of results type: string x-order: 2 tags: description: The list of revision tags items: $ref: '#/components/schemas/EnvironmentRevisionTag' type: array x-order: 1 required: - nextToken - tags type: object EnvironmentRevisionRetracted: description: EnvironmentRevisionRetracted contains information about a retracted environment revision. properties: at: description: The timestamp when the revision was retracted. format: date-time type: string x-order: 2 byLogin: description: The login name of the user who retracted the revision. type: string x-order: 3 byName: description: The display name of the user who retracted the revision. type: string x-order: 4 reason: description: The reason the revision was retracted. type: string x-order: 5 replacement: description: The revision number that replaced this retracted revision. format: int64 type: integer x-order: 1 required: - at - replacement type: object EscPropertyAccessor: allOf: - $ref: '#/components/schemas/EscAccessor' - description: A PropertyAccessor is a single accessor that is associated with a resolved value. properties: value: $ref: '#/components/schemas/EscRange' description: The range of the expression that defines the resolved value. x-order: 1 required: - value type: object ListEnvironmentTagsResponse: description: Response containing a map of environment tags. properties: nextToken: description: Token for fetching the next page of results type: string x-order: 2 tags: additionalProperties: $ref: '#/components/schemas/EnvironmentTag' description: Map of tag names to their tag details type: object x-order: 1 required: - nextToken - tags type: object ListScheduledActionsResponse: description: ListScheduledActionsResponse is the API response when scheduled deployments are listed. properties: schedules: description: The list of scheduled actions items: $ref: '#/components/schemas/ScheduledAction' type: array x-order: 1 required: - schedules type: object UpdateEnvironmentRevisionTagRequest: description: Request to update an environment revision tag. properties: revision: description: The revision number to associate with the tag. format: int64 type: integer x-order: 1 type: object UserInfo: description: 'UserInfo contains just the display information for a user. This information may be returned from public APIs, and as such this structure must not contain sensitive information. Please refer to User for this sort of thing.' properties: avatarUrl: description: The URL of the user's avatar image. type: string x-order: 3 email: description: 'IMPORTANT: The email address of the user is only included on a few admin-only APIs. For nearly all APIs that return a UserInfo object, this will not be provided. considered sensitive information.' type: string x-order: 4 githubLogin: description: The user's login name. type: string x-order: 2 name: description: The user's display name. type: string x-order: 1 required: - avatarUrl - githubLogin - name type: object DecryptEnvironmentSecretsResponse: description: DecryptEnvironmentSecretsResponse defines the response body for multiple decrypted values. properties: plaintexts: description: The list of decrypted plaintext values. items: type: string type: array x-order: 1 required: - plaintexts type: object EnvironmentImportReferrer: description: An EnvironmentImportReferrer represents an `import` reference from another environment. properties: name: description: The name of the referring environment. type: string x-order: 2 project: description: The project name of the referring environment. type: string x-order: 1 revision: description: The revision number of the referring environment. format: int64 type: integer x-order: 3 required: - name - project - revision type: object CreateEnvironmentTagRequest: description: Request body for create environment tag. properties: name: description: The name type: string x-order: 1 value: description: The value type: string x-order: 2 required: - name - value type: object PatchEnvironmentSettingsRequest: description: Request body for partially updating environment settings. properties: deletionProtected: description: DeletionProtected indicates whether deletion protection should be enabled for this environment. Null means no change. type: boolean x-order: 1 type: object Webhook: description: 'Webhook describes a webhook registered with the Pulumi Service. It may be registered to either an Organization, Stack or Environment.' properties: active: description: Whether the webhook is active and will receive deliveries. type: boolean x-order: 9 displayName: description: The human-readable display name shown in the UI. type: string x-order: 6 envName: description: The environment name. Set when the webhook is scoped to a specific environment. type: string x-order: 4 filters: description: Specific event types this webhook subscribes to. If empty, all events are delivered. items: type: string type: array x-order: 11 format: description: The format of the webhook payload (e.g., 'raw', 'slack', 'ms_teams'). type: string x-order: 10 groups: description: Event groups this webhook subscribes to (e.g., 'stacks', 'deployments'). items: type: string type: array x-order: 12 name: description: The unique identifier name for the webhook within its scope. type: string x-order: 5 organizationName: description: The organization that owns this webhook. type: string x-order: 1 payloadUrl: description: The URL to which webhook payloads are delivered. type: string x-order: 7 projectName: description: The project name. Set when the webhook is scoped to a specific stack. type: string x-order: 2 secret: description: Secret will be omitted when returned from the service. type: string x-order: 8 stackName: description: The stack name. Set when the webhook is scoped to a specific stack. type: string x-order: 3 required: - active - displayName - name - organizationName - payloadUrl type: object EncryptEnvironmentSecretsResponse: description: EncryptEnvironmentSecretsResponse defines the response body for multiple encrypted values. properties: ciphertexts: description: The encrypted values, in order of the plaintexts from the request. items: type: string type: array x-order: 1 required: - ciphertexts type: object CreateEnvironmentRequest: description: Request body for create environment. properties: name: description: The name of the environment. type: string x-order: 2 project: description: The project name for the environment. type: string x-order: 1 required: - name - project type: object EnvironmentRevisionChangeRequest: description: EnvironmentRevisionChangeRequest represents a change request associated with an environment revision. properties: description: description: A description of the change request. type: string x-order: 2 id: description: The unique identifier of the change request. type: string x-order: 1 required: - description - id type: object ScheduledAction: description: ScheduledAction describes the state of a scheduled action. properties: created: description: The timestamp when this scheduled action was created. type: string x-order: 9 definition: additionalProperties: type: object description: The action definition, which varies based on the action kind. type: object x-order: 8 id: description: The unique identifier for this scheduled action. type: string x-order: 1 kind: description: The kind of action to be executed. enum: - deployment - environment_rotation - scan - agent_automation type: string x-order: 7 x-pulumi-model-property: enumTypeName: ScheduledActionKind enumComments: The kind of scheduled action. enumFieldNames: - Deployment - EnvironmentRotation - Scan - AgentAutomation enumFieldComments: - A scheduled deployment action. - A scheduled environment secret rotation action. - A scheduled Insights scan action. - An agent automation. lastExecuted: description: The timestamp of the last execution, if any. type: string x-order: 11 modified: description: The timestamp when this scheduled action was last modified. type: string x-order: 10 nextExecution: description: The timestamp of the next scheduled execution. type: string x-order: 5 orgID: description: The organization ID that owns this scheduled action. type: string x-order: 2 paused: description: Whether the scheduled action is currently paused. type: boolean x-order: 6 scheduleCron: description: A cron expression defining the recurring schedule. type: string x-order: 3 scheduleOnce: description: A timestamp for a one-time scheduled execution. type: string x-order: 4 required: - created - definition - id - kind - lastExecuted - modified - nextExecution - orgID - paused type: object ListEnvironmentsResponse: description: Response containing a list of environments for an organization. properties: environments: description: The list of environments items: $ref: '#/components/schemas/OrgEnvironment' type: array x-order: 1 nextToken: description: Token for fetching the next page of results type: string x-order: 2 required: - environments type: object EscExpr: description: An Expr holds information about an expression in an environment definition. properties: access: $ref: '#/components/schemas/EscAccessExpr' description: The access, if this is an access expression. x-order: 8 base: $ref: '#/components/schemas/EscExpr' description: The expression that defined this expression's base value, if any. x-order: 3 builtin: $ref: '#/components/schemas/EscBuiltinExpr' description: The builtin, if this is a call to a builtin function. x-order: 11 interpolate: description: The interpolations, if this is a string interpolation expression. items: $ref: '#/components/schemas/EscInterpolation' type: array x-order: 6 keyRanges: additionalProperties: $ref: '#/components/schemas/EscRange' description: Ranges for the object's keys, if this is an object expression. type: object x-order: 4 list: description: The list elements, if this is a list expression. items: $ref: '#/components/schemas/EscExpr' type: array x-order: 9 literal: description: The literal value, if this is a literal expression (nil, bool, json.Number, or string) type: object x-order: 5 object: additionalProperties: $ref: '#/components/schemas/EscExpr' description: The object properties, if this is an object expression. type: object x-order: 10 range: $ref: '#/components/schemas/EscRange' description: The range of the expression. x-order: 1 schema: $ref: '#/components/schemas/EscSchemaSchema' description: The schema of the expression's result. x-order: 2 symbol: description: The property accessors, if this is a symbol expression. items: $ref: '#/components/schemas/EscPropertyAccessor' type: array x-order: 7 required: - range type: object CloneEnvironmentRequest: description: Request body for cloning an ESC environment to a new environment. properties: name: description: Name for the newly cloned environment. type: string x-order: 2 preserveAccess: description: Whether to copy access control settings from the source environment. type: boolean x-order: 5 preserveEnvironmentTags: description: Whether to copy environment-level tags from the source environment. type: boolean x-order: 6 preserveHistory: description: Whether to copy the revision history from the source environment. type: boolean x-order: 4 preserveRevisionTags: description: Whether to copy revision-level tags from the source environment. type: boolean x-order: 7 project: description: Target project for the cloned environment. If omitted, uses the source project. type: string x-order: 1 version: description: Specific version of the source environment to clone. If omitted, clones the latest version. format: int64 type: integer x-order: 3 required: - name type: object RotateEnvironmentResponse: description: Response from a secret rotation operation on an environment. properties: diagnostics: description: Diagnostics generated during the rotation operation. items: $ref: '#/components/schemas/EnvironmentDiagnostic' type: array x-order: 2 id: description: The unique identifier for this rotation operation. type: string x-order: 1 secretRotationEvent: $ref: '#/components/schemas/SecretRotationEvent' description: Details of the secret rotation event. x-order: 3 required: - id - secretRotationEvent type: object ChangeRequestRef: description: Represents change request ref. properties: changeRequestId: description: The change request identifier type: string x-order: 1 latestRevisionNumber: description: The latest revision number format: int64 type: integer x-order: 2 type: object RestoreEnvironmentRequest: allOf: - $ref: '#/components/schemas/CreateEnvironmentRequest' - description: Request to restore a previously deleted environment. properties: deletionTimestamp: description: The ISO 8601 timestamp of the environment's deletion, used to identify which deleted version to restore. type: string x-order: 1 required: - deletionTimestamp type: object SecretRotation: description: Represents the state of a single secret rotation within an environment. properties: environmentPath: description: The path of the secret being rotated in the environment. type: string x-order: 2 errorMessage: description: An error message if the rotation failed. type: string x-order: 4 id: description: The unique identifier for this secret rotation. type: string x-order: 1 status: description: The current status of the rotation. type: string x-order: 3 required: - environmentPath - id - status type: object EscAccessor: description: An Accessor is an element index or property name. properties: index: description: The integer index of the element to access. Mutually exclusive with Key. format: int64 type: integer x-order: 1 key: description: The key of the property to access. Mutually exclusive with Index. type: string x-order: 2 range: $ref: '#/components/schemas/EscRange' description: The range of the accessor. x-order: 3 type: object CreateEnvironmentRevisionTagRequest: description: Request body for create environment revision tag. properties: name: description: The name type: string x-order: 1 revision: description: The revision format: int64 type: integer x-order: 2 required: - name type: object EnvironmentLinks: description: EnvironmentLinks contains hypermedia links related to an environment resource. properties: self: description: The URL for this environment resource. type: string x-order: 1 type: object UpdateEnvironmentResponse: allOf: - $ref: '#/components/schemas/EnvironmentDiagnosticsResponse' - description: Response returned after updating an environment. type: object EnvironmentResponse: allOf: - $ref: '#/components/schemas/EscEnvironment' - description: EnvironmentResponse is the response returned when retrieving or evaluating an environment. properties: diagnostics: description: The list of diagnostics produced during environment evaluation. items: $ref: '#/components/schemas/EnvironmentDiagnostic' type: array x-order: 1 environmentFunctionSummary: $ref: '#/components/schemas/EnvironmentFunctionSummary' description: A summary of the functions used in the environment. x-order: 2 required: - environmentFunctionSummary type: object EnvironmentFunctionSummary: description: EnvironmentFunctionSummary summarizes the functions used in an environment, including counts and rotation paths. properties: funcCounts: additionalProperties: format: int64 type: integer description: A map of function names to the number of times they are used. type: object x-order: 1 rotationPaths: description: The list of paths that have rotation configured. items: type: string type: array x-order: 2 required: - funcCounts - rotationPaths type: object CreateEnvironmentOpenRequestResponse: description: Response body for create environment open request. properties: changeRequests: description: List of change requests items: $ref: '#/components/schemas/CreateEnvironmentOpenRequestResult' type: array x-order: 1 required: - changeRequests type: object EscEnvironment: description: An Environment contains the result of evaluating an environment definition. properties: executionContext: $ref: '#/components/schemas/EscEvaluatedExecutionContext' description: ExecutionContext contains the values + schema for the execution context passed to the root environment. x-order: 4 exprs: additionalProperties: $ref: '#/components/schemas/EscExpr' description: Exprs contains the AST for each expression in the environment definition. type: object x-order: 1 properties: additionalProperties: $ref: '#/components/schemas/EscValue' description: Properties contains the detailed values produced by the environment. type: object x-order: 2 schema: $ref: '#/components/schemas/EscSchemaSchema' description: Schema contains the schema for Properties. x-order: 3 type: object EscRange: description: A Range defines a range within an environment definition. properties: begin: $ref: '#/components/schemas/EscPos' description: The beginning of the range. x-order: 2 end: $ref: '#/components/schemas/EscPos' description: The end of the range. x-order: 3 environment: description: The name of the environment. type: string x-order: 1 required: - begin - end type: object ScheduledActionHistoryEvent: description: ScheduledActionHistoryEvent describes the state of a scheduled deployment history event. properties: executed: description: The timestamp when the action was executed. type: string x-order: 3 id: description: The unique identifier for this history event. type: string x-order: 1 result: description: The result of the execution. type: string x-order: 5 scheduledActionID: description: The ID of the scheduled action this event belongs to. type: string x-order: 2 version: description: The version of the scheduled action at the time of execution. format: int64 type: integer x-order: 4 required: - executed - id - result - scheduledActionID - version type: object ListEnvironmentReferrersResponse: description: Response containing a list of entities that reference an environment. properties: continuationToken: description: Continuation token for pagination type: string x-order: 2 referrers: additionalProperties: items: $ref: '#/components/schemas/EnvironmentReferrer' type: array description: Map of referrer types to their referrer details type: object x-order: 1 required: - referrers type: object ListProvidersResponse: description: Response containing a list of available providers. properties: providers: description: The list of provider names items: type: string type: array x-order: 1 required: - providers type: object RetractEnvironmentRevisionRequest: description: Request to retract a specific revision of an environment. properties: reason: description: The reason for retracting the revision. type: string x-order: 2 replacement: description: The revision number to use as a replacement, if any. format: int64 type: integer x-order: 1 type: object RotateEnvironmentRequest: description: Request to rotate secrets in an environment. properties: paths: description: The paths of the secrets to rotate. items: type: string type: array x-order: 1 required: - paths type: object EncryptEnvironmentSecretsRequest: description: EncryptEnvironmentSecretsRequest defines the request body for encrypting secret values. properties: plaintexts: description: The list of plaintext values to encrypt. items: type: string type: array x-order: 1 required: - plaintexts type: object ListEnvironmentSecretRotationHistoryResponse: description: Response containing a list of secret rotation history events for an environment. properties: events: description: The list of secret rotation events items: $ref: '#/components/schemas/SecretRotationEvent' type: array x-order: 1 required: - events type: object EnvironmentRevisionTag: description: EnvironmentRevisionTag represents a named tag pointing to a specific environment revision. properties: created: description: The timestamp when the tag was created. format: date-time type: string x-order: 3 editorLogin: description: The login name of the user who last edited the tag. type: string x-order: 5 editorName: description: The display name of the user who last edited the tag. type: string x-order: 6 modified: description: The timestamp when the tag was last modified. format: date-time type: string x-order: 4 name: description: The name of the tag. type: string x-order: 1 revision: description: The revision number this tag points to. format: int64 type: integer x-order: 2 required: - created - modified - name - revision type: object EscValue: description: A Value is the result of evaluating an expression within an environment definition. properties: secret: description: Secret is true if this value is secret. type: boolean x-order: 2 trace: $ref: '#/components/schemas/EscTrace' description: 'Trace holds information about the expression that computed this value and the value (if any) with which it was merged.' x-order: 4 unknown: description: Unknown is true if this value is unknown. type: boolean x-order: 3 value: description: 'Value holds the concrete representation of the value. May be nil, bool, json.Number, string, []Value, or map[string]Value.' type: object x-order: 1 required: - trace type: object ListScheduledActionHistoryResponse: description: ListScheduledActionHistoryResponse is the API response when a scheduled action history is listed. properties: scheduleHistoryEvents: description: The list of scheduled action history events items: $ref: '#/components/schemas/ScheduledActionHistoryEvent' type: array x-order: 1 required: - scheduleHistoryEvents type: object EnvironmentDiagnosticsResponse: description: EnvironmentDiagnosticsResponse contains a list of diagnostics from an environment operation. properties: diagnostics: description: The list of diagnostics produced by the environment operation. items: $ref: '#/components/schemas/EnvironmentDiagnostic' type: array x-order: 1 type: object EnvironmentReferrerMetadata: description: EnvironmentReferrerMetadata contains counts of different types of entities that reference an environment. properties: environmentReferrerCount: description: The number of environments that reference this environment. format: int64 type: integer x-order: 1 insightsAccountReferrerCount: description: The number of Insights accounts that reference this environment. format: int64 type: integer x-order: 3 stackReferrerCount: description: The number of stacks that reference this environment. format: int64 type: integer x-order: 2 required: - environmentReferrerCount - insightsAccountReferrerCount - stackReferrerCount type: object UpdateEnvironmentTagRequestNewTag: description: The new tag name and value to set when updating an environment tag. properties: name: description: The new tag name. type: string x-order: 1 value: description: The new tag value. type: string x-order: 2 type: object DecryptEnvironmentSecretsRequest: description: DecryptEnvironmentSecretsRequest defines the request body for decrypting secret values. properties: ciphertexts: description: The list of encrypted ciphertext values to decrypt. items: type: string type: array x-order: 1 required: - ciphertexts type: object EnvironmentMetadata: description: EnvironmentMetadata contains read-only metadata about a Pulumi environment. properties: activeChangeRequest: $ref: '#/components/schemas/ChangeRequestRef' description: 'ActiveChangeRequest contains information about any active change request for this environment. Will be nil if there is no active change request.' x-order: 3 gatedActions: description: GatedActions indicates which actions on this environment require change request approval. items: type: string type: array x-order: 4 id: description: Environment metadata follows other Pulumi Cloud "Metadata" fields and contains read-only information about the environment type: string x-order: 1 openRequestNeeded: description: OpenRequestNeeded indicates whether an open request is currently needed in order to open the environment. type: boolean x-order: 5 ownedBy: $ref: '#/components/schemas/UserInfo' description: The user with ownership of this environment x-order: 2 required: - id - ownedBy type: object CreateEnvironmentOpenRequestResult: description: Result of create environment open request. properties: changeRequestId: description: The change request identifier type: string x-order: 3 environmentName: description: The environment name type: string x-order: 2 etag: description: The entity tag for concurrency control type: string x-order: 5 latestRevisionNumber: description: The latest revision number format: int64 type: integer x-order: 4 projectName: description: The project name type: string x-order: 1 required: - changeRequestId - environmentName - etag - latestRevisionNumber - projectName type: object EscPos: description: A Pos defines a position within an environment definition. properties: byte: description: Byte is the byte offset into the file where the indicated position begins. format: int64 type: integer x-order: 3 column: description: 'Column is the source code column where this position points. Columns are counted in visual cells starting at 1, and are incremented roughly per grapheme cluster encountered.' format: int64 type: integer x-order: 2 line: description: 'Line is the source code line where this position points. Lines are counted starting at 1 and incremented for each newline character encountered.' format: int64 type: integer x-order: 1 required: - byte - column - line type: object EnvironmentDiagnostic: description: EnvironmentDiagnostic represents a diagnostic message associated with an environment definition. properties: path: description: The path within the environment definition where the diagnostic occurred. type: string x-order: 3 range: $ref: '#/components/schemas/EscRange' description: The source range where the diagnostic occurred. x-order: 1 severity: description: 'The severity of the diagnostic: "error" or "warning".' type: string x-order: 4 summary: description: A summary of the diagnostic message. type: string x-order: 2 type: object EnvironmentReferrer: description: An EnvironmentReferrer represents an entity that refers to an environment. properties: environment: $ref: '#/components/schemas/EnvironmentImportReferrer' description: The environment import referrer, if this referrer is an environment. x-order: 1 insightsAccount: $ref: '#/components/schemas/EnvironmentInsightsAccountReferrer' description: The Insights account referrer, if this referrer is an Insights account. x-order: 3 stack: $ref: '#/components/schemas/EnvironmentStackReferrer' description: The stack referrer, if this referrer is a stack. x-order: 2 type: object EnvironmentStackReferrer: description: An EnvironmentStackReferrer represents a reference from an IaC stack. properties: project: description: The project name of the referring stack. type: string x-order: 1 stack: description: The name of the referring stack. type: string x-order: 2 version: description: The version of the stack update that references this environment. format: int64 type: integer x-order: 3 required: - project - stack - version type: object UpdateEnvironmentTagRequestCurrentTag: description: The current tag value to match when updating an environment tag. properties: value: description: The current tag value. type: string x-order: 1 required: - value type: object EnvironmentTag: description: EnvironmentTag represents a key-value tag associated with an environment. properties: created: description: The timestamp when the tag was created. format: date-time type: string x-order: 3 editorLogin: description: The login name of the user who last edited the tag. type: string x-order: 5 editorName: description: The display name of the user who last edited the tag. type: string x-order: 6 modified: description: The timestamp when the tag was last modified. format: date-time type: string x-order: 4 name: description: The name of the tag. type: string x-order: 1 value: description: The value of the tag. type: string x-order: 2 required: - created - editorLogin - editorName - modified - name - value type: object EscBuiltinExpr: description: A BuiltinExpr is a call to a builtin function. properties: arg: $ref: '#/components/schemas/EscExpr' description: The argument expression passed to the builtin function. x-order: 4 argSchema: $ref: '#/components/schemas/EscSchemaSchema' description: The schema for the function argument. x-order: 3 name: description: The name of the builtin function. type: string x-order: 1 nameRange: $ref: '#/components/schemas/EscRange' description: The source range of the function name. x-order: 2 required: - arg - argSchema - name - nameRange type: object SecretRotationEvent: description: An event representing a secret rotation operation on an environment. properties: completed: description: The timestamp when the rotation completed. format: date-time type: string x-order: 7 created: description: The timestamp when this rotation event was created. format: date-time type: string x-order: 3 environmentId: description: The ID of the environment being rotated. type: string x-order: 2 errorMessage: description: An error message if the rotation failed. type: string x-order: 10 id: description: The unique identifier for this rotation event. type: string x-order: 1 postRotationRevision: description: The environment revision after the rotation, if completed. format: int64 type: integer x-order: 5 preRotationRevision: description: The environment revision before the rotation. format: int64 type: integer x-order: 4 rotations: description: The individual secret rotations within this event. items: $ref: '#/components/schemas/SecretRotation' type: array x-order: 11 scheduledActionID: description: The ID of the scheduled action that triggered this rotation, if any. type: string x-order: 9 status: description: The current status of the rotation event. type: string x-order: 8 userID: description: The ID of the user who initiated the rotation. type: string x-order: 6 required: - created - environmentId - id - preRotationRevision - rotations - status - userID type: object EscAccessExpr: description: An AccessExpr represents a property access with a receiving value. properties: accessors: description: The accessors to evaluate. items: $ref: '#/components/schemas/EscAccessor' type: array x-order: 2 receiver: $ref: '#/components/schemas/EscRange' description: The receiver to access. x-order: 1 required: - accessors - receiver type: object OrgEnvironment: description: OrgEnvironment represents an environment within an organization. properties: created: description: The ISO 8601 timestamp when the environment was created. type: string x-order: 5 deletedAt: description: The ISO 8601 timestamp when the environment was soft-deleted, or null if not deleted. type: string x-order: 9 id: description: The unique identifier of the environment. type: string x-order: 1 links: $ref: '#/components/schemas/EnvironmentLinks' description: Hypermedia links related to the environment. x-order: 10 modified: description: The ISO 8601 timestamp when the environment was last modified. type: string x-order: 6 name: description: The name of the environment. type: string x-order: 4 organization: description: The login name of the organization that owns this environment. type: string x-order: 2 ownedBy: $ref: '#/components/schemas/UserInfo' description: The user with ownership of this environment x-order: 7 project: description: The project name that contains this environment, if project-scoped. type: string x-order: 3 referrerMetadata: $ref: '#/components/schemas/EnvironmentReferrerMetadata' description: Metadata about what refers to this environment. x-order: 11 settings: $ref: '#/components/schemas/EnvironmentSettings' description: Configuration settings for the environment, such as deletion protection. x-order: 12 tags: additionalProperties: type: string description: User-defined key-value tags associated with the environment for organization and filtering. type: object x-order: 8 required: - created - id - modified - name - organization - ownedBy - referrerMetadata - settings - tags type: object EnvironmentInsightsAccountReferrer: description: An EnvironmentInsightsAccountReferrer represents a reference from an Insights account. properties: accountName: description: The name of the Insights account that references the environment. type: string x-order: 1 required: - accountName type: object OpenEnvironmentResponse: description: Response body after opening an environment session. properties: diagnostics: description: Any diagnostics generated when opening the environment. items: $ref: '#/components/schemas/EnvironmentDiagnostic' type: array x-order: 2 id: description: The unique identifier of the opened environment session. type: string x-order: 1 required: - id type: object ProviderSchema: description: ProviderSchema describes the input and output schemas for a provider. properties: description: description: A description of the provider. type: string x-order: 2 inputs: $ref: '#/components/schemas/EscSchemaSchema' description: The input schema for the provider. x-order: 3 name: description: The name of the provider. type: string x-order: 1 outputs: $ref: '#/components/schemas/EscSchemaSchema' description: The output schema for the provider. x-order: 4 required: - description - inputs - name - outputs type: object WebhookDelivery: description: 'WebhookDelivery is a result of a webhook that was sent. i.e. the Pulumi-side logs for the end-users webhook. It merges both model.WebhookEvent and model.WebhookDelivery.' properties: duration: description: The duration of the delivery request in milliseconds. format: int64 type: integer x-order: 5 id: description: The unique identifier of the delivery. type: string x-order: 1 kind: description: The kind of webhook event. type: string x-order: 2 payload: description: The JSON payload that was sent. type: string x-order: 3 requestHeaders: description: The HTTP headers sent with the request. type: string x-order: 7 requestUrl: description: The URL the webhook was delivered to. type: string x-order: 6 responseBody: description: The HTTP response body. type: string x-order: 10 responseCode: description: The HTTP response status code. format: int64 type: integer x-order: 8 responseHeaders: description: The HTTP response headers. type: string x-order: 9 timestamp: description: The time the delivery was sent, as a Unix epoch timestamp. format: int64 type: integer x-order: 4 required: - duration - id - kind - payload - requestHeaders - requestUrl - responseBody - responseCode - responseHeaders - timestamp type: object EscInterpolation: description: An Interpolation holds information about a part of an interpolated string expression. properties: text: description: The text of the expression. Precedes the stringified Value in the output. type: string x-order: 1 value: description: The value to interpolate. items: $ref: '#/components/schemas/EscPropertyAccessor' type: array x-order: 2 type: object UpdateEnvironmentTagRequest: description: Request to update an environment tag. properties: currentTag: $ref: '#/components/schemas/UpdateEnvironmentTagRequestCurrentTag' description: The current tag value to match for optimistic concurrency control. x-order: 1 newTag: $ref: '#/components/schemas/UpdateEnvironmentTagRequestNewTag' description: The new tag name and value to set. x-order: 2 required: - currentTag - newTag type: object CreateEnvironmentScheduleRequest: description: CreateEnvironmentScheduleRequest is an API request model to create all types of environment schedules. properties: scheduleCron: description: The schedule cron type: string x-order: 1 scheduleOnce: description: The schedule once format: date-time type: string x-order: 2 secretRotationRequest: $ref: '#/components/schemas/CreateEnvironmentSecretRotationScheduleRequest' description: The secret rotation request x-order: 3 type: object