openapi: 3.0.0
servers:
- url: https://api.enterprise.apigee.com/v1
info:
title: Deployments
description: >-
Manage API proxy and shared flow deployments.
version: '1.0'
security:
- Basic: []
- OAuth: []
paths:
"/organizations/{org_name}/apis/{api_name}/deployments":
get:
tags: ["Deployments", "API Proxy"]
summary: Get API proxy deployment details
description: >-
Gets details for all deployments of the API proxy across all environments (test, prod, and so on).
operationId: 'getAPIProxyDeploymentDetails'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/api_name'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DeploymentDetails'
example:
environment:
- name: test
revision:
- configuration:
basePath: "/"
steps: []
name: '1'
server: []
state: deployed
name: hotels
organization: myorg
'400':
description: Bad request
"/organizations/{org_name}/sharedflows/{sharedflow_name}/deployments":
get:
tags: ["Deployments", "Shared Flows"]
summary: Get shared flow deployment details
description: >-
Gets details for all deployments of the shared flows across all environments (test, prod, and so on).
operationId: 'getSharedFlowDeploymentDetails'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/sharedflow_name'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DeploymentDetails'
example:
environment:
- name: test
revision:
- configuration:
basePath: "/"
steps: []
name: '1'
server: []
state: deployed
name: mySharedFlow
organization: myorg
'400':
description: Bad request
"/organizations/{org_name}/apis/{api_name}/revisions/{revision_number}/deployments":
post:
tags: ["Deployments"]
summary: Force undeployment of API proxy
description: >-
Forces the undeployment of an API proxy. This may be necessary if the API proxy is partially deployed and you need to undeploy and then redeploy it.
Because multiple revisions of the same API proxy can be deployed in the same environment if the base paths are different, you must specify the revision number of the API proxy.
See also Undeploy an API proxy revision.
operationId: 'forceAPIProxyUndeploy'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/api_name'
- $ref: '#/components/parameters/revision_number'
- $ref: '#/components/parameters/action'
- $ref: '#/components/parameters/env'
- $ref: '#/components/parameters/force'
- $ref: '#/components/parameters/content-type'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/APIProxyRevisionDeploymentDetailsEnv'
example:
aPIProxy: restaurantproxy
configuration:
basePath: "/"
steps: []
environment: test
name: '1'
organization: myorg
revision: '1'
server: []
state: deployed
'400':
description: Bad request
get:
tags: ["Deployments"]
summary: Get API proxy revision deployments
description: >-
Gets deployment details for a specific revision of an API proxy.
**Note:** On Edge for Private Cloud, you can troubleshoot deployment status on a router or message processor (MP) by noting its ID and checking your server logs.
You may need to restart the router or MP that has the deployment issue.
operationId: 'getAPIProxyRevisionDeployments'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/api_name'
- $ref: '#/components/parameters/revision_number'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/APIProxyRevisionDeployments'
example:
aPIProxy: hotels
environment:
- configuration:
basePath: "/"
steps: []
name: test
server: []
state: deployed
name: '1'
organization: myorg
'400':
description: Bad request
"/organizations/{org_name}/deployments":
get:
tags: ["Deployments"]
summary: Get all API proxy deployments for all environments in an organization
description: >-
Lists all API proxies that are deployed for all environments in an organization.
operationId: 'getDeployments'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/includeServerStatus'
- $ref: '#/components/parameters/includeApiConfig'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/APIProxyDeploymentsOrg'
example:
environment:
- aPIProxy:
- name: weather
revision:
- configuration:
basePath: "/"
steps: []
name: '5'
server: []
state: deployed
- aPIProxy:
- name: hotels
revision:
- configuration:
basePath: "/"
steps: []
name: '1'
server: []
state: deployed
name: test
name: myorg
'400':
description: Bad request
"/organizations/{org_name}/environments/{env_name}/apis/{api_name}/revisions/{revision_number}/deployments":
post:
tags: ["Deployments"]
summary: Deploy API proxy
description: >-
Deploys a revision of an API proxy to an environment in an organization.
For seamless deployment with zero downtime, set the `override` parameter to `true`. In this case, the new revision
is deployed fully before the existing revision is undeployed. If the deployment of the new revision fails, the existing revision
remains deployed. See Seamless deployment (zero downtime).
You cannot invoke an API proxy until it has been deployed to an environment. After an API proxy revision is deployed, it cannot
be edited. The size limit of an API proxy bundle is 15 MB.
**About API proxies that use shared flows**
Apigee Edge does not validate the dependencies between shared flows and API proxies at deployment time.
For example, if the Flow Callout policy in an API proxy references a shared flow that
either doesn't exist or isn't deployed, the API proxy deployment still succeeds. At runtime, when Edge checks the dependency if validation fails Edge throws an API proxy error with a 500 HTTP status code.
operationId: 'deployAPIProxy'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/env_name'
- $ref: '#/components/parameters/api_name'
- $ref: '#/components/parameters/revision_number'
- $ref: '#/components/parameters/delay'
- $ref: '#/components/parameters/override'
- $ref: '#/components/parameters/content-type'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/APIProxyRevisionDeploymentDetailsEnv'
example:
aPIProxy: restaurantproxy
configuration:
basePath: "/"
steps: []
environment: test
name: '1'
organization: myorg
revision: '1'
server: []
state: deployed
'400':
description: Bad request
get:
tags: ["Deployments"]
summary: Get deployment details for an API proxy revision in an environment
description: >-
Gets deployment details for a specific revision of an API proxy.
**Note**: On Edge for Private Cloud, you can troubleshoot deployment status on a router or message processor by noting the router or message processor ID and checking your server logs. You may need to restart the router or message processor that has a deployment issue.
operationId: 'getAPIProxyRevisionDeploymentsEnv'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/env_name'
- $ref: '#/components/parameters/api_name'
- $ref: '#/components/parameters/revision_number'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/APIProxyRevisionDeploymentDetailsEnv'
example:
aPIProxy: restaurantproxy
configuration:
basePath: "/"
steps: []
environment: test
name: '1'
organization: myorg
revision: '1'
server: []
state: deployed
'400':
description: Bad request
delete:
tags: ["Deployments"]
summary: Undeploy an API proxy revision in an environment
description: >-
Undeploys an API proxy revision from an environment.
Because multiple revisions of the same API proxy can be deployed in the same environment if the base paths are different, you must specify the revision number of the API proxy.
See also Force undeployment of an API proxy to force the undeployment of an API proxy.
operationId: 'deleteAPIProxyRevisionDeploymentsEnv'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/env_name'
- $ref: '#/components/parameters/api_name'
- $ref: '#/components/parameters/revision_number'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/APIProxyRevisionDeploymentDetailsEnv'
example:
aPIProxy: restaurantproxy
configuration:
basePath: "/"
steps: []
environment: test
name: '1'
organization: myorg
revision: '1'
server: []
state: deployed
'400':
description: Bad request
"/organizations/{org_name}/environments/{env_name}/sharedflows/{sharedflow_name}/revisions/{revision_number}/deployments":
post:
tags: ["Deployments", "Shared Flows"]
summary: Deploy shared flow
description: >-
Deploys a revision of a shared flow to an environment in an organization.
For seamless deployment with zero downtime, set the `override` parameter to `true`. In this case, the new revision
is deployed fully before the existing revision is undeployed. If the deployment of the new revision fails, the existing revision
remains deployed. See Seamless deployment (zero downtime).
If you experience HTTP 500 errors during deployment, consider using the `override` parameter to deploy the shared flow in place of a revision currently deployed.
The size limit of a shared flow bundle is 15 MBs.
operationId: 'deploySharedFlow'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/env_name'
- $ref: '#/components/parameters/sharedflow_name'
- $ref: '#/components/parameters/revision_number'
- $ref: '#/components/parameters/delay'
- $ref: '#/components/parameters/override'
- $ref: '#/components/parameters/content-type'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SharedFlowRevisionDeploymentDetails'
example:
environment: test
name: '1'
organization: myorg
revision: '1'
server: []
sharedFlow: mySharedFlow
state: deployed
'400':
description: Bad request
get:
tags: ["Deployments", "Shared Flows"]
summary: Get deployment details for a shared flow revision in an environment
description: >-
Gets deployment details for a specific revision of a shared flow.
**Note**: On Edge for Private Cloud, you can troubleshoot deployment status on a router or message processor by noting the router or message processor ID and checking your server logs. You may need to restart the router or message processor that has a deployment issue.
operationId: 'getSharedFlowRevisionDeploymentsEnv'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/env_name'
- $ref: '#/components/parameters/sharedflow_name'
- $ref: '#/components/parameters/revision_number'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SharedFlowRevisionDeploymentDetails'
example:
environment: test
name: '1'
organization: myorg
revision: '1'
server: []
sharedFlow: mySharedFlow
state: deployed
'400':
description: Bad request
delete:
tags: ["Deployments", "Shared Flows"]
summary: Undeploy a shared flow revision in an environment
description: >-
Undeploys a shared flow revision from an environment.
Because multiple revisions of the same shared flow can be deployed in the same environment if the base paths are different, you must specify the revision number of the shared flow.
operationId: 'deleteSharedFlowRevisionDeploymentsEnv'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/env_name'
- $ref: '#/components/parameters/sharedflow_name'
- $ref: '#/components/parameters/revision_number'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SharedFlowRevisionDeploymentDetails'
example:
environment: test
name: '1'
organization: myorg
revision: '1'
server: []
sharedFlow: mySharedFlow
state: undeployed
'400':
description: Bad request
"/organizations/{org_name}/environments/{env_name}/apis/{api_name}/deployments":
get:
tags: ["Environment", "API Proxy", "Deployment"]
summary: Get deployment details for an API proxy in an environment
description: >-
Gets deployment details for an API proxy in an environment.
operationId: 'getAPIProxyDeploymentEnv'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/env_name'
- $ref: '#/components/parameters/api_name'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/APIProxyDeploymentDetailsEnv'
example:
environment: test
name: hotels
organization: myorg
revision:
- configuration:
basePath: "/"
steps: []
name: '1'
server: []
state: deployed
'400':
description: Bad request
"/organizations/{org_name}/environments/{env_name}/deployments":
get:
tags: ["Environment", "API Proxy", "Deployment"]
summary: Get API proxy deployments for an environment
description: >-
Lists all API proxies that are deployed to the specified environment.
The `server` information is used by Apigee support to identify servers that support the API proxy deployment.
operationId: 'getAPIProxyDeploymentsEnv'
parameters:
- $ref: '#/components/parameters/org_name'
- $ref: '#/components/parameters/env_name'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/APIProxyDeploymentsEnv'
example:
aPIProxy:
- name: hotels
revision:
- configuration:
basePath: "/"
steps: []
name: '1'
server: []
state: deployed
name: test
organization: myorg
'400':
description: Bad request
components:
securitySchemes:
Basic:
type: http
scheme: basic
description: >-
Multi-factor authentication is not supported.
OAuth:
type: apiKey
name: Authorization
in: header
description: >-
For OAuth, enter the following in the Key field: Bearer %your-token%
(see https://docs.apigee.com/api-platform/system-administration/using-oauth2#get-the-tokens)
parameters:
org_name:
in: path
name: org_name
required: true
schema:
type: string
description: Organization name.
env_name:
in: path
name: env_name
required: true
schema:
type: string
description: Environment name.
api_name:
in: path
name: api_name
required: true
schema:
type: string
description: API proxy name.
sharedflow_name:
in: path
name: sharedflow_name
required: true
schema:
type: string
description: Shared flow name.
revision_number:
in: path
name: revision_number
required: true
schema:
type: string
description: Revision number.
delay:
in: query
name: delay
required: false
schema:
type: number
description: >-
Time interval, in seconds, to wait before undeploying the currently deployed API proxy revision.
Use this setting in conjunction with `override` parameter to minimize the impact of deployment on in-flight transactions and the occurrence of 502 Bad Gateway or 504 Gateway Timeout errors. Negative values are treated as 0.
override:
in: query
name: override
required: false
schema:
type: boolean
description: >-
Flag that specifies whether to force the deployment of the new revision over the currently deployed revision.
Set this parameter to `true` to provide seamless deployment. In this case, the existing revision remains deployed until the new revision is fully deployed. Use in conjunction with the `delay` parameter to control undeployment and
minimize the impact on in-flight transaction. If set to `false`, you must undeploy the currently deployed revision before deploying the new revision.
includeServerStatus:
in: query
name: includeServerStatus
required: false
schema:
type: boolean
description: >-
Flag that specifies whether to include server information. The `server` information is used by Apigee support to identify servers that support the API proxy deployment. Set this value to `false` to omit server information. Defaults to `true`.
includeApiConfig:
in: query
name: includeApiConfig
required: false
schema:
type: boolean
description: >-
Flag that specifies whether to include configuration information. Set this value to `false` to omit configuration information. Defaults to `true`.
action:
in: query
name: action
required: true
schema:
type: string
description: >-
Set to `undeploy`.
env:
in: query
name: env
required: true
schema:
type: string
description: >-
Environment in which the API proxy is deployed.
force:
in: query
name: force
required: true
schema:
type: boolean
description: >-
Set to `true` to force undeployment. Defaults to `false`.
content-type:
in: header
name: Content-type
required: true
schema:
type: string
description: >-
Must be set to `application/x-www-form-urlencoded`.
schemas:
APIProxyDeployments:
description: API proxy deployments.
type: object
properties:
environment:
description: >-
Environment details.
type: array
items:
type: string
name:
description: >-
Name of the API proxy.
type: string
organization:
description: >-
Name of the organization.
type: string
APIProxyRevisionDeployments:
description: API proxy revision deployments.
type: object
properties:
aPIProxy:
description: Name of the API proxy
environment:
description: >-
API proxy deployment details in the environment.
type: array
items:
type: object
properties:
configuration:
type: object
properties:
basePath:
type: string
description: Basepath of the API proxy revision.
steps:
type: array
items:
type: string
name:
type: string
description: Revision of the API proxy.
server:
type: array
description: Used by Apigee support to identify servers that support the API proxy or shared flow deployment.
items:
type: object
properties:
pod:
type: object
description: Pod details.
properties:
name:
type: string
description: Pod name.
region:
type: string
description: Pod region.
status:
type: string
description: Deployment status.
type:
type: array
description: Pod type.
items:
type: string
uUID:
type: string
description: Server ID.
state:
type: string
description: Deployment status, such as `deployed`.
name:
description: >-
Revision of the API proxy.
type: string
organization:
description: >-
Name of the organization.
type: string
DeploymentDetails:
description: API proxy or shared flow deployment details.
type: object
properties:
environment:
description: >-
API proxy or shared flow deployment details in the environment.
type: array
items:
type: object
properties:
name:
type: string
description: Name of the environment.
revision:
type: array
description: Revision details.
items:
type: object
properties:
configuration:
type: object
properties:
basePath:
type: string
description: Basepath of the API proxy or shared flow revision.
steps:
type: array
items:
type: string
name:
type: string
description: Revision of the API proxy or shared flow.
server:
type: array
description: Used by Apigee support to identify servers that support the API proxy or shared flow deployment.
items:
type: object
properties:
pod:
type: object
description: Pod details.
properties:
name:
type: string
description: Pod name.
region:
type: string
description: Pod region.
status:
type: string
description: Deployment status.
type:
type: array
description: Pod type.
items:
type: string
uUID:
type: string
description: Server ID.
state:
type: string
description: Deployment status, such as `deployed`.
name:
description: >-
Name of the API proxy or shared flow.
type: string
organization:
description: >-
Name of the organization.
type: string
APIProxyDeploymentDetailsEnv:
description: API proxy deployment details in an environment.
type: object
properties:
environment:
description: >-
Name of the environment.
type: string
revision:
type: array
description: Revision details.
items:
type: object
properties:
configuration:
type: object
properties:
basePath:
type: string
description: Basepath of the API proxy revision.
steps:
type: array
items:
type: string
name:
type: string
description: Revision of the API proxy.
server:
type: array
description: Used by Apigee support to identify servers that support the API proxy or shared flow deployment.
items:
type: object
properties:
pod:
type: object
description: Pod details.
properties:
name:
type: string
description: Pod name.
region:
type: string
description: Pod region.
status:
type: string
description: Deployment status.
type:
type: array
description: Pod type.
items:
type: string
uUID:
type: string
description: Server ID.
state:
type: string
description: Deployment status, such as `deployed`.
name:
description: >-
Name of the API proxy.
type: string
organization:
description: >-
Name of the organization.
type: string
APIProxyRevisionDeploymentDetails:
description: API proxy revision deployment details in an environment.
type: object
properties:
environment:
description: >-
API proxy revision deployment details in the environment.
type: array
items:
type: object
properties:
configuration:
type: object
properties:
basePath:
type: string
description: Basepath of the API proxy revision.
steps:
type: array
items:
type: string
name:
type: string
description: Revision of the API proxy.
server:
type: array
description: Used by Apigee support to identify servers that support the API proxy or shared flow deployment.
items:
type: object
properties:
pod:
type: object
description: Pod details.
properties:
name:
type: string
description: Pod name.
region:
type: string
description: Pod region.
status:
type: string
description: Deployment status.
type:
type: array
description: Pod type.
items:
type: string
uUID:
type: string
description: Server ID.
state:
type: string
description: Deployment status, such as `deployed` or `undeployed`.
name:
description: >-
Name of the API proxy.
type: string
organization:
description: >-
Name of the organization.
type: string
APIProxyRevisionDeploymentDetailsEnv:
description: API proxy revision deployment details in an environment.
type: object
properties:
aPIProxy:
type: string
description: Name of the API proxy.
configuration:
type: object
properties:
basePath:
type: string
description: Basepath of the API proxy revision.
steps:
type: array
items:
type: string
environment:
type: string
description: Name of the environment.
name:
type: string
description: Revision of the API proxy.
organization:
type: string
description: Name of the organization.
revision:
type: string
description: Revision of the API proxy.
server:
type: array
description: Used by Apigee support to identify servers that support the API proxy or shared flow deployment.
items:
type: object
properties:
pod:
type: object
description: Pod details.
properties:
name:
type: string
description: Pod name.
region:
type: string
description: Pod region.
status:
type: string
description: Deployment status.
type:
type: array
description: Pod type.
items:
type: string
uUID:
type: string
description: Server ID.
state:
type: string
description: Deployment status, such as `deployed` or `undeployed`.
SharedFlowRevisionDeploymentDetails:
description: Shared flow revision deployment details in an environment.
type: object
properties:
environment:
type: string
description: Name of the environment.
name:
type: string
description: Revision of the shared flow.
organization:
type: string
description: Name of the organization.
revision:
type: string
description: Revision of the shared flow.
server:
type: array
description: Used by Apigee support to identify servers that support the API proxy or shared flow deployment.
items:
type: object
properties:
pod:
type: object
description: Pod details.
properties:
name:
type: string
description: Pod name.
region:
type: string
description: Pod region.
status:
type: string
description: Deployment status.
type:
type: array
description: Pod type.
items:
type: string
uUID:
type: string
description: Server ID.
sharedFlow:
type: string
description: Name of the shared flow.
state:
type: string
description: Deployment status, such as `deployed` or `undeployed`.
SharedFlowRevisionDeploymentDetailsEnv:
description: Shared flow revision deployed environment details.
type: object
properties:
environment:
type: array
description: Environment details.
items:
type: object
properties:
name:
type: string
description: Environment name.
server:
type: array
description: Used by Apigee support to identify servers that support the API proxy or shared flow deployment.
items:
type: object
properties:
pod:
type: object
description: Pod details.
properties:
name:
type: string
description: Pod name.
region:
type: string
description: Pod region.
status:
type: string
description: Deployment status.
type:
type: array
description: Pod type.
items:
type: string
uUID:
type: string
description: Server ID.
state:
type: string
description: Deployment status, such as `deployed` or `undeployed`.
name:
type: string
description: Revision of the shared flow.
organization:
type: string
description: Name of the organization.
sharedFlow:
type: string
description: Name of the shared flow.
APIProxyDeploymentsEnv:
description: API proxy deployments in an environment.
type: object
properties:
aPIProxy:
description: >-
API proxy name and revision details.
type: array
items:
type: object
properties:
name:
type: string
description: Name of the API proxy.
revision:
type: array
description: Revision details.
items:
type: object
properties:
configuration:
type: object
properties:
basePath:
type: string
description: Basepath of the API proxy revision.
steps:
type: array
items:
type: string
name:
type: string
description: Revision of the API proxy.
server:
type: array
description: Used by Apigee support to identify servers that support the API proxy or shared flow deployment.
items:
type: object
properties:
pod:
type: object
description: Pod details.
properties:
name:
type: string
description: Pod name.
region:
type: string
description: Pod region.
status:
type: string
description: Deployment status.
type:
type: array
description: Pod type.
items:
type: string
uUID:
type: string
description: Server ID.
state:
type: string
description: Deployment status, such as `deployed` or `undeployed`.
name:
description: >-
Name of the API proxy.
type: string
organization:
description: >-
Name of the organization.
type: string
APIProxyDeploymentsOrg:
description: API proxy deployment details for an organization.
type: object
properties:
environment:
description: Name of the environment.
type: array
items:
type: object
properties:
aPIProxy:
description: API proxy name and revision details.
type: array
items:
type: object
properties:
name:
type: string
description: Name of the API proxy.
revision:
type: array
description: Revision details.
items:
type: object
properties:
configuration:
type: object
properties:
basePath:
type: string
description: Basepath of the API proxy revision.
steps:
type: array
items:
type: string
name:
type: string
description: Revision of the API proxy.
server:
type: array
description: Used by Apigee support to identify servers that support the API proxy or shared flow deployment.
items:
type: object
properties:
pod:
type: object
description: Pod details.
properties:
name:
type: string
description: Pod name.
region:
type: string
description: Pod region.
status:
type: string
description: Deployment status.
type:
type: array
description: Pod type.
items:
type: string
uUID:
type: string
description: Server ID.
state:
type: string
description: Deployment status, such as `deployed` or `undeployed`.
name:
type: string
description: Name of the environment.
name:
type: string
description: Name of the organization.