openapi: 3.0.1
info:
  title: Journeys APIs
  description: "The Journeys APIs allow to manage capping and throttling configurations.\
    \ They are accessible by an authorized technical account created through the [Adobe\
    \ Developer Console](https://console.adobe.io/home).\n\nLearn more about the capping\
    \ and throttling mechanisms in the following documentation: [Journeys integration\
    \ with external systems](https://experienceleague.adobe.com/docs/journey-optimizer/using/configuration/configure-journeys/external-systems/external-systems.html#capping)\n\
    \n**Visualize API calls with Postman**:\n  - [Capping API - Postman collection\
    \ on GitHub](https://github.com/AdobeDocs/JourneyAPI/blob/master/postman-collections/Journeys_Capping-API_postman-collection.json)\n\
    \  - [Throttling API - Postman collection on GitHub](https://github.com/AdobeDocs/JourneyAPI/blob/master/postman-collections/Journeys_Throttling-API_postman-collection.json)\n\
    \n\n**API paths**:\n  - Journey Optimizer Gateway URL {JO_HOST} : https://platform.adobe.io\n\
    \  - Base path for this API {BASE_PATH} : **/journey/orchestration**\n  - Example\
    \ of a complete path: https://platform.adobe.io/journey/orchestration/endpointConfigs\n\
    \n**Required headers**:\n  - All calls require the authentication headers **Authorization**,\
    \ **x-api-key**, and **x-gw-ims-org-id**.\n  - All resources in Experience Platform\
    \ and Journey Optimizer are isolated to specific virtual sandboxes. All requests\
    \ to these APIs require the header **x-sandbox-name** whose value is the all-lowercase\
    \ name of the sandbox the operation will take place in (for example, *'prod'*).\
    \ See the [sandboxes overview](https://experienceleague.adobe.com/docs/experience-platform/sandbox/home.html?)\
    \ for more information.\n  - All requests with a payload in the request body (such\
    \ as POST, PUT calls) must include the header **Content-Type** with the value\
    \ *application/json*\n  \n**Notes about configuration states and deployment status**:\n\
    \n  - The current state of a capping or throttling configuration is either *'created'*,\
    \ *'updated'* or *'deployed'*. Refer to the description and example below for\
    \ GET **/endpointConfigs/{uid}** and PUT **/endpointConfigs/{uid}** operations.\n\
    \n  - In creation and update responses, a **canDeploy** JSON object indicates\
    \ whether or not a configuration can be deployed. It may contain some errors and\
    \ warnings. Refer to the description and example below for GET **/endpointConfigs/canDeploy/{uid}**\
    \ operation.\n\n**Specific notes about throttling configurations**:\n  - You must\
    \ provide all the following attributes when creating or updating a throttling\
    \ configuration: *'maxThroughput'*, *'urlPattern'* and *'methods'*.\n\n  - A throttling\
    \ configuration must be defined on a production sandbox (given through **x-sandbox-name**\
    \ header). It is applied at organization level.\n\n  - **Only one throttling configuration\
    \ is currently allowed per organisation.**"
  version: v1
servers:
- url: https://platform.adobe.io/journey/orchestration
paths:
  /endpointConfigs:
    post:
      tags:
      - Capping configuration
      summary: Create an endpoint capping configuration
      description: "Create a capping configuration on a given endpoint identified\
        \ by its URL. The endpoint can be used in one or more actions and data sources.\n\
        \nIn the given payload, the capping configuration is defined by :\n\n- **url**\
        \ : the URL of the endpoint, as defined in the actions or data sources.\n\n\
        - **methods** : the methods called on this endpoint, as defined in the actions\
        \ or data sources.\n\n- Within **services** JSON object, one of the two following\
        \ values is expected :\n\n  * *\"action\"* if the capping will be applied\
        \ on the endpoint when executing a Custom Action\n  * *\"dataSource\"* if\
        \ the capping will be applied on the endpoint when fetching data from a Data\
        \ Source\n\n- (optional) **maxHttpConnections**: max count of simultaneous\
        \ connections to the endpoint (max value is 400). If not provided, there will be no limitation\
        \ of the number of connections to the endpoint.\n\n- Within **rating** JSON\
        \ object :\n  * **maxCallsCount**: max count of calls to be performed in the\
        \ given period (min value is 1)\n  * **periodInMs**: duration in milliseconds\
        \ (value greater than 0)\n\nIn the response to this call, the created configuration\
        \ is returned along with its **uid** (Unique ID) that is expected to be passed\
        \ afterwards in the other calls.\n  \n"
      operationId: com/adobe/voyager/service/authoring/restapis/v1_0/swaggerendpoints/post/endpointconfigs.json
        public
      parameters:
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format "Bearer
          {ACCESS_TOKEN}"
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Specific API key for your unique Journey Orchestration configuration
          {API_KEY}
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: Unique Identifier for your IMS Organization {IMS_ORG}
        required: true
        schema:
          type: string
      - name: x-sandbox-name
        in: header
        description: The name of the sandbox in which the operation will take place
          {SANDBOX_NAME}
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json;charset=utf-8:
            schema:
              required:
              - methods
              - orgId
              - services
              - url
              type: object
              properties:
                methods:
                  type: array
                  description: The methods called on this endpoint, as defined in
                    the actions or data sources
                  items:
                    type: string
                    enum:
                    - GET
                    - POST
                    - PUT
                    - PATCH
                    - DELETE
                    - OPTION
                orgId:
                  type: string
                  description: The unique identifier of the IMS organization
                services:
                  required:
                  - action|dataSource
                  type: object
                  properties:
                    action|dataSource:
                      required:
                      - rating
                      type: object
                      properties:
                        maxHttpConnections:
                          type: integer
                          description: Max count of simultaneous connections to the
                            endpoint
                        rating:
                          required:
                          - maxCallsCount
                          - periodInMs
                          type: object
                          properties:
                            maxCallsCount:
                              type: integer
                              description: Max count of calls to be performed in the
                                given period (min value is 1)
                            periodInMs:
                              type: integer
                              description: Duration in milliseconds (value greater
                                than 0)
                      description: \'action' or 'dataSource'
                url:
                  type: string
                  description: The URL of the endpoint
              example:
                url: https://api.example.org/data/2.5/weather
                methods:
                - GET
                services:
                  dataSource:
                    maxHttpConnections: 50
                    rating:
                      maxCallsCount: 500
                      periodInMs: 1000
                orgId: <IMS Org Id>
        required: true
      responses:
        200:
          description: 'OK: the operation was successful.'
          content:
            application/json;charset=utf-8:
              schema:
                required:
                - createdElement
                type: object
                properties:
                  createdElement:
                    required:
                    - uid
                    type: object
                    properties:
                      methods:
                        type: array
                        items:
                          type: string
                          enum:
                          - GET
                          - POST
                          - PUT
                          - PATCH
                          - DELETE
                          - OPTION
                      orgId:
                        type: string
                      services:
                        type: object
                        properties:
                          action|dataSource:
                            type: object
                            properties:
                              maxHttpConnections:
                                type: integer
                              rating:
                                type: object
                                properties:
                                  maxCallsCount:
                                    type: integer
                                  periodInMs:
                                    type: integer
                      url:
                        type: string
                      metadata:
                        type: object
                        properties:
                          createdBy:
                            type: string
                          createdById:
                            type: string
                          createdAt:
                            type: string
                          lastModifiedBy:
                            type: string
                          lastModifiedById:
                            type: string
                          lastModifiedAt:
                            type: string
                          lastDeployedBy:
                            type: string
                          lastDeployedById:
                            type: string
                          lastDeployedAt:
                            type: string
                      state:
                        type: string
                        enum:
                        - created
                        - updated
                        - deployed
                      tenantId:
                        type: string
                      uid:
                        type: string
                      sandboxName:
                        type: string
                      sandboxId:
                        type: string
                      authoringFormatVersion:
                        type: string
                  uid:
                    type: string
                  uri:
                    type: string
                  resStatus:
                    type: string
                    enum:
                    - created
                  canDeploy:
                    type: object
                    properties:
                      validationStatus:
                        type: string
                      reason:
                        type: string
                      errors:
                        type: array
                        items:
                          type: object
                          properties:
                            errorCode:
                              type: integer
                            error:
                              type: string
              example:
                createdElement:
                  url: https://api.example.org/data/2.5/weather
                  methods:
                  - GET
                  services:
                    dataSource:
                      maxHttpConnections: 50
                      rating:
                        maxCallsCount: 500
                        periodInMs: 1000
                  metadata:
                    createdBy: <user name>
                    createdById: <user adobeId>
                    lastModifiedBy: <user name>
                    lastModifiedById: <user adobeId>
                    createdAt: 2020-03-09T18:21:52.432963Z
                    lastModifiedAt: 2020-03-09T18:21:52.432963Z
                  state: created
                  orgId: <IMS Org Id>
                  tenantId: prod
                  uid: 9e6bbdf4-8e40-4ac8-9e83-1e2cc7f0f1e7
                  sandboxName: prod
                  sandboxId: 37fc5780-e3de-11e9-a3bb-d7c554480df4
                  authoringFormatVersion: "1.0"
                  hasBeenDeployed: false
                uid: 9e6bbdf4-8e40-4ac8-9e83-1e2cc7f0f1e7
                uri: /voyager/apis/endpointConfigs/9e6bbdf4-8e40-4ac8-9e83-1e2cc7f0f1e7
                resStatus: created
                canDeploy:
                  validationStatus: ok
        500:
          description: 'Internal Server Error: invalid values or missing elements
            in the given payload.'
          content: {}
      x-codegen-request-body-name: payload
  /endpointConfigs/{uid}:
    get:
      tags:
      - Capping configuration
      summary: Get an endpoint capping configuration
      description: |-
        Return the capping configuration identified by the given Unique ID. The latest definition is returned.

        In addition to the data provided when creating or updating a configuration, the response essentially contains the following elements:
        - **uid** : Unique ID of the capping configuration, generated at creation time
        - **metadata** : information about creation, last update and last deployment
        - **state** : current state of the capping configuration, either *'created'*, *'updated'* or *'deployed'*
        - **hasBeenDeployed** : *true* or *false*
        - **deployedConfig** in case the configuration has been deployed: this is the capping configuration at latest deployment time. The current capping configuration differs if it has been updated since.
      operationId: com/adobe/voyager/service/authoring/restapis/v1_0/swaggerendpoints/get/endpointconfigs_uid.json
        public
      parameters:
      - name: uid
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format "Bearer
          {ACCESS_TOKEN}"
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Specific API key for your unique Journey Orchestration configuration
          {API_KEY}
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: Unique Identifier for your IMS Organization {IMS_ORG}
        required: true
        schema:
          type: string
      - name: x-sandbox-name
        in: header
        description: The name of the sandbox in which the operation will take place
          {SANDBOX_NAME}
        required: true
        schema:
          type: string
      responses:
        200:
          description: 'OK: the operation was successful.'
          content:
            application/json;charset=utf-8:
              schema:
                required:
                - result
                type: object
                properties:
                  result:
                    required:
                    - uid
                    type: object
                    properties:
                      _id:
                        type: string
                      url:
                        type: string
                      methods:
                        type: array
                        items:
                          type: string
                          enum:
                          - GET
                          - POST
                          - PUT
                          - PATCH
                          - DELETE
                          - OPTION
                      services:
                        type: object
                        properties:
                          action|dataSource:
                            type: object
                            properties:
                              maxHttpConnections:
                                type: integer
                              rating:
                                type: object
                                properties:
                                  maxCallsCount:
                                    type: integer
                                  periodInMs:
                                    type: integer
                      metadata:
                        type: object
                        properties:
                          createdBy:
                            type: string
                          createdById:
                            type: string
                          createdAt:
                            type: string
                          lastModifiedBy:
                            type: string
                          lastModifiedById:
                            type: string
                          lastModifiedAt:
                            type: string
                          lastDeployedBy:
                            type: string
                          lastDeployedById:
                            type: string
                          lastDeployedAt:
                            type: string
                      state:
                        type: string
                        enum:
                        - created
                        - updated
                        - deployed
                      orgId:
                        type: string
                      tenantId:
                        type: string
                      uid:
                        type: string
                      sandboxName:
                        type: string
                      sandboxId:
                        type: string
                      authoringFormatVersion:
                        type: string
                      hasBeenDeployed:
                        type: boolean
                      deployedConfig:
                        type: object
                        properties:
                          _id:
                            type: string
                          url:
                            type: string
                          methods:
                            type: array
                            items:
                              type: string
                              enum:
                              - GET
                              - POST
                              - PUT
                              - PATCH
                              - DELETE
                              - OPTION
                          services:
                            type: object
                            properties:
                              action|dataSource:
                                type: object
                                properties:
                                  maxHttpConnections:
                                    type: integer
                                  rating:
                                    type: object
                                    properties:
                                      maxCallsCount:
                                        type: integer
                                      periodInMs:
                                        type: integer
                          orgId:
                            type: string
                          tenantId:
                            type: string
                          uid:
                            type: string
                          sandboxName:
                            type: string
                          sandboxId:
                            type: string
              example:
                result:
                  _id: 5fc2cbf1-3c31-4bb6-91ef-0ac9e277d3bc
                  url: https://api.example.org/data/2.5/weather
                  methods:
                  - POST
                  - PUT
                  services:
                    action:
                      maxHttpConnections: 15000
                      rating:
                        maxCallsCount: 2000
                        periodInMs: 1000
                  metadata:
                    createdBy: <user name>
                    createdById: <user adobeId>
                    lastModifiedBy: <user name>
                    lastModifiedById: <user adobeId>
                    createdAt: 2020-03-03T10:42:47.813552Z
                    lastModifiedAt: 2020-03-13T17:24:11.765320Z
                  state: updated
                  orgId: <IMS Org Id>
                  tenantId: prod
                  uid: 5fc2cbf1-3c31-4bb6-91ef-0ac9e277d3bc
                  sandboxName: prod
                  sandboxId: 37fc5780-e3de-11e9-a3bb-d7c554480df4
                  authoringFormatVersion: "1.0"
                  hasBeenDeployed: false
        404:
          description: 'Not Found: unknown given Unique ID.'
          content: {}
    put:
      tags:
      - Capping configuration
      summary: Update an endpoint capping configuration
      description: |-
        Update the capping configuration identified by the given Unique ID. The operation is an overwrite of the existing configuration, therefore the request body must include all fields required to create a configuration.

        A configuration can be updated at any time, even if it has been deployed. In such case, **state** is *'updated'* and **hasBeenDeployed** is *true*. To apply the latest changes, the configuration must be deployed again. The **deployedConfig** object always defines the configuration which is currently deployed.
      operationId: com/adobe/voyager/service/authoring/restapis/v1_0/swaggerendpoints/put/endpointconfigs_uid.json
        public
      parameters:
      - name: uid
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format "Bearer
          {ACCESS_TOKEN}"
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Specific API key for your unique Journey Orchestration configuration
          {API_KEY}
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: Unique Identifier for your IMS Organization {IMS_ORG}
        required: true
        schema:
          type: string
      - name: x-sandbox-name
        in: header
        description: The name of the sandbox in which the operation will take place
          {SANDBOX_NAME}
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json;charset=utf-8:
            schema:
              required:
              - methods
              - orgId
              - services
              - url
              type: object
              properties:
                methods:
                  type: array
                  description: The methods called on this endpoint, as defined in
                    the actions or data sources
                  items:
                    type: object
                orgId:
                  type: string
                  description: The unique identifier of the IMS organization
                services:
                  required:
                  - action|dataSource
                  type: object
                  properties:
                    action|dataSource:
                      required:
                      - rating
                      type: object
                      properties:
                        maxHttpConnections:
                          type: integer
                          description: Max count of simultaneous connections to the
                            endpoint
                        rating:
                          required:
                          - maxCallsCount
                          - periodInMs
                          type: object
                          properties:
                            maxCallsCount:
                              type: integer
                              description: Max count of calls to be performed in the
                                given period (min value is 1)
                            periodInMs:
                              type: integer
                              description: Duration in milliseconds (value greater
                                than 0)
                      description: \'action' or 'dataSource'
                url:
                  type: string
                  description: The URL of the endpoint
              example:
                url: https://api.example.org/data/2.5/*
                methods:
                - GET
                services:
                  dataSource:
                    maxHttpConnections: 20000
                    rating:
                      maxCallsCount: 5000
                      periodInMs: 1000
                orgId: <IMS Org Id>
        required: true
      responses:
        200:
          description: 'OK: operation was successful.'
          content:
            application/json;charset=utf-8:
              schema:
                required:
                - updatedElement
                type: object
                properties:
                  updatedElement:
                    required:
                    - uid
                    type: object
                    properties:
                      methods:
                        type: array
                        items:
                          type: string
                          enum:
                          - GET
                          - POST
                          - PUT
                          - PATCH
                          - DELETE
                          - OPTION
                      orgId:
                        type: string
                      services:
                        type: object
                        properties:
                          action|dataSource:
                            type: object
                            properties:
                              maxHttpConnections:
                                type: integer
                              rating:
                                type: object
                                properties:
                                  maxCallsCount:
                                    type: integer
                                  periodInMs:
                                    type: integer
                      url:
                        type: string
                      uid:
                        type: string
                      metadata:
                        type: object
                        properties:
                          createdBy:
                            type: string
                          createdById:
                            type: string
                          createdAt:
                            type: string
                          lastModifiedBy:
                            type: string
                          lastModifiedById:
                            type: string
                          lastModifiedAt:
                            type: string
                          lastDeployedBy:
                            type: string
                          lastDeployedById:
                            type: string
                          lastDeployedAt:
                            type: string
                      state:
                        type: string
                        enum:
                        - created
                        - updated
                        - deployed
                      hasBeenDeployed:
                        type: boolean
                      tenantId:
                        type: string
                      sandboxName:
                        type: string
                      sandboxId:
                        type: string
                      authoringFormatVersion:
                        type: string
                  uid:
                    type: string
                  uri:
                    type: string
                  resStatus:
                    type: string
                  canDeploy:
                    type: object
                    properties:
                      validationStatus:
                        type: string
                      reason:
                        type: string
                      errors:
                        type: array
                        items:
                          type: object
                          properties:
                            errorCode:
                              type: integer
                            error:
                              type: string
              example:
                updatedElement:
                  methods:
                  - GET
                  orgId: <IMS Org Id>
                  services:
                    action:
                      maxHttpConnections: 30000
                      rating:
                        maxCallsCount: 5000
                        periodInMs: 1000
                  url: https://api.example.org/data/2.5/*
                  uid: 9e6bbdf4-8e40-4ac8-9e83-1e2cc7f0f1e7
                  metadata:
                    createdBy: <user name>
                    createdById: <user adobeId>
                    lastModifiedBy: <user name>
                    lastModifiedById: <user adobeId>
                    createdAt: 2020-03-09T18:21:52.432963Z
                    lastModifiedAt: 2020-04-10T11:21:52.432963Z
                  state: updated
                  hasBeenDeployed: false
                  tenantId: prod
                  sandboxName: prod
                  sandboxId: 37fc5780-e3de-11e9-a3bb-d7c554480df4
                uid: 9e6bbdf4-8e40-4ac8-9e83-1e2cc7f0f1e7
                uri: /voyager/apis/endpointConfigs/9e6bbdf4-8e40-4ac8-9e83-1e2cc7f0f1e7
                resStatus: updated
                canDeploy:
                  validationStatus: ok
        404:
          description: 'Not Found: unknown given Unique ID.'
          content: {}
        500:
          description: 'Internal Server Error: invalid values or missing elements
            in the given payload.'
          content: {}
      x-codegen-request-body-name: payload
    delete:
      tags:
      - Capping configuration
      summary: Delete an endpoint capping configuration
      description: |-
        Delete the capping configuration identified by the given Unique ID.

        In case the configuration has been deployed, it must be undeployed before being deleted. Otherwise an error response with HTTP Status Code 500 is returned :
          ```json
          {
            "status": 500,
            "error": {
              "code":1451,
              "family": "INPUT_OUTPUT_ERROR",
              "message": "Can't delete a deployed endpoint config. Undeploy it before deleting it",
              "service": "vyg-authoring-api",
              "version": "ce5cac3",
              "context": "com.adobe.voyager.service.authoring.restapis.v1_0.EndpointConfigService:189"
              "schema":"21835D7E5BFF031F0A494026@AdobeOrg_prod_journeyVersions"
            },
            "requestId": "pxSRgsBzUKYcMyNlqc0paqIJZfc0qdAw"
          }
          ```

        To override this control, you need to pass *forceDelete=true* as query parameter.
      operationId: com/adobe/voyager/service/authoring/restapis/v1_0/swaggerendpoints/delete/endpointconfigs_uid.json
        public
      parameters:
      - name: forceDelete
        in: query
        schema:
          type: string
      - name: uid
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format "Bearer
          {ACCESS_TOKEN}"
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Specific API key for your unique Journey Orchestration configuration
          {API_KEY}
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: Unique Identifier for your IMS Organization {IMS_ORG}
        required: true
        schema:
          type: string
      - name: x-sandbox-name
        in: header
        description: The name of the sandbox in which the operation will take place
          {SANDBOX_NAME}
        required: true
        schema:
          type: string
      responses:
        200:
          description: 'OK: the operation was successful.'
          content:
            application/json;charset=utf-8:
              schema:
                type: object
              example: {}
        404:
          description: 'Not Found: unknown given Unique ID.'
          content: {}
        500:
          description: 'Internal Server Error: invalid values or missing elements
            in the given payload.'
          content: {}
  /endpointConfigs/{uid}/canDeploy:
    get:
      tags:
      - Capping configuration
      summary: Check if an endpoint capping configuration can be deployed
      description: "Calling this operation is not mandatory for using any other operation\
        \ of the capping API. It allows to verify whether or not a capping configuration\
        \ can be deployed. It returns the validation status of the configuration identified\
        \ by its Unique ID, either:\n  - **\"ok\"**\n  - **\"error\"**\n\nThe potential\
        \ errors are:\n  - **ERR_ENDPOINTCONFIG_100**: capping config: missing or\
        \ invalid url\n  - **ERR_ENDPOINTCONFIG_101**: capping config: malformed url\n\
        \  - **ERR_ENDPOINTCONFIG_102**: capping config: malformed url: wildchar in\
        \ url not allowed in host:port\n  - **ERR_ENDPOINTCONFIG_103**: capping config:\
        \ missing HTTP methods\n  - **ERR_ENDPOINTCONFIG_104**: capping config: no\
        \ call rating defined\n  - **ERR_ENDPOINTCONFIG_107**: capping config: invalid\
        \ max calls count (maxCallsCount)\n  - **ERR_ENDPOINTCONFIG_108**: capping\
        \ config: invalid max calls count (periodInMs)\n  - **ERR_ENDPOINTCONFIG_111**:\
        \ capping config: can't create endpoint config: invalid payload\n  - **ERR_ENDPOINTCONFIG_112**:\
        \ capping config: can't create endpoint config: expecting a JSON payload\n\
        \  - **ERR_AUTHORING_ENDPOINTCONFIG_1**: invalid service name '\\<given value\\\
        >': must be 'dataSource' or 'action'\n  \n   The potential warning is:\n \
        \ - **ERR_ENDPOINTCONFIG_106**: capping config: max HTTP connections not defined:\
        \ no limitation by default\n"
      operationId: com/adobe/voyager/service/authoring/restapis/v1_0/swaggerendpoints/get/endpointconfigs_uid_candeploy.json
        public
      parameters:
      - name: uid
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format "Bearer
          {ACCESS_TOKEN}"
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Specific API key for your unique Journey Orchestration configuration
          {API_KEY}
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: Unique Identifier for your IMS Organization {IMS_ORG}
        required: true
        schema:
          type: string
      - name: x-sandbox-name
        in: header
        description: The name of the sandbox in which the operation will take place
          {SANDBOX_NAME}
        required: true
        schema:
          type: string
      responses:
        200:
          description: 'OK: the operation was successful.'
          content:
            application/json;charset=utf-8:
              schema:
                type: object
                properties:
                  canDeploy:
                    type: object
                    properties:
                      validationStatus:
                        type: string
                      reason:
                        type: string
                      errors:
                        type: array
                        items:
                          type: object
                          properties:
                            errorCode:
                              type: integer
                            error:
                              type: string
              example:
                canDeploy:
                  validationStatus: error
                  reason: 1 error is currently blocking the publication
                  errors:
                  - errorCode: ERR_ENDPOINTCONFIG_101
                    error: 'capping config: malformed url'
                  warnings:
                  - warningCode: ERR_ENDPOINTCONFIG_106
                    warning: 'capping config: max HTTP connections not defined: no
                      limitation by default'
                    scope:
                      endpointConfigService: dataSource
                      endpointConfigUrl: https://api.example*.org:8*0/data/2.5/weather
        404:
          description: 'Not Found: unknown given Unique ID.'
          content: {}
  /endpointConfigs/{uid}/deploy:
    post:
      tags:
      - Capping configuration
      summary: Deploy an endpoint capping configuration
      description: |-
        Deploy the capping configuration identified by the given Unique ID.

        A successful deployment returns an empty response body and HTTP Status Code 204 (No-content). In such case, the configuration state is changed to *'deployed'* and **hasBeenDeployed** is *true*.
      operationId: com/adobe/voyager/service/authoring/restapis/v1_0/swaggerendpoints/post/endpointconfigs_uid_deploy.json
        public
      parameters:
      - name: uid
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format "Bearer
          {ACCESS_TOKEN}"
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Specific API key for your unique Journey Orchestration configuration
          {API_KEY}
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: Unique Identifier for your IMS Organization {IMS_ORG}
        required: true
        schema:
          type: string
      - name: x-sandbox-name
        in: header
        description: The name of the sandbox in which the operation will take place
          {SANDBOX_NAME}
        required: true
        schema:
          type: string
      responses:
        204:
          description: 'No Content: the operation was successful.'
          content: {}
        500:
          description: 'Internal Server Error: the definition of given configuration
            definition was not valid.'
          content: {}
  /endpointConfigs/{uid}/undeploy:
    post:
      tags:
      - Capping configuration
      summary: Undeploy an endpoint capping configuration
      description: |-
        Undeploy the capping configuration identified by the given Unique ID.

        A successful undeployment returns an empty response body and HTTP Status Code 204 (No-content). In such case, the configuration state is changed back to the state before the deployment, either *'created'* or *'updated'*, and **hasBeenDeployed** is changed to *false*.
      operationId: com/adobe/voyager/service/authoring/restapis/v1_0/swaggerendpoints/post/endpointconfigs_uid_undeploy.json
        public
      parameters:
      - name: uid
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format "Bearer
          {ACCESS_TOKEN}"
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Specific API key for your unique Journey Orchestration configuration
          {API_KEY}
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: Unique Identifier for your IMS Organization {IMS_ORG}
        required: true
        schema:
          type: string
      - name: x-sandbox-name
        in: header
        description: The name of the sandbox in which the operation will take place
          {SANDBOX_NAME}
        required: true
        schema:
          type: string
      responses:
        204:
          description: 'No Content: the operation was successful or the given configuration
            was not deployed.'
          content: {}
  /list/endpointConfigs:
    post:
      tags:
      - Capping configuration
      summary: List the endpoint capping configurations
      description: Return the list of all endpoint capping configurations defined
        for the given IMS organization and sandbox.
      operationId: com/adobe/voyager/service/authoring/restapis/v1_0/swaggerendpoints/post/list_endpointconfigs.json
        public
      parameters:
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format "Bearer
          {ACCESS_TOKEN}"
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Specific API key for your unique Journey Orchestration configuration
          {API_KEY}
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: Unique Identifier for your IMS Organization {IMS_ORG}
        required: true
        schema:
          type: string
      - name: x-sandbox-name
        in: header
        description: The name of the sandbox in which the operation will take place
          {SANDBOX_NAME}
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json;charset=utf-8:
            schema:
              type: object
              example: {}
        required: false
      responses:
        200:
          description: 'OK: the operation was successful.'
          content:
            application/json;charset=utf-8:
              schema:
                required:
                - results
                type: object
                properties:
                  results:
                    type: array
                    items:
                      type: object
                      properties:
                        metadata:
                          type: object
                          properties:
                            createdBy:
                              type: string
                            createdById:
                              type: string
                            createdAt:
                              type: string
                            lastModifiedBy:
                              type: string
                            lastModifiedById:
                              type: string
                            lastModifiedAt:
                              type: string
                            lastDeployedBy:
                              type: string
                            lastDeployedById:
                              type: string
                            lastDeployedAt:
                              type: string
                        methods:
                          type: array
                          items:
                            type: string
                            enum:
                            - GET
                            - POST
                            - PUT
                            - PATCH
                            - DELETE
                            - OPTION
                        services:
                          type: object
                          properties:
                            action|dataSource:
                              type: object
                              properties:
                                maxHttpConnections:
                                  type: integer
                                rating:
                                  type: object
                                  properties:
                                    maxCallsCount:
                                      type: integer
                                    periodInMs:
                                      type: integer
                        orgId:
                          type: string
                        url:
                          type: string
                        uid:
                          type: string
                        hasBeenDeployed:
                          type: boolean
                        tenantId:
                          type: string
                        sandboxName:
                          type: string
                        sandboxId:
                          type: string
                        _id:
                          type: string
                        state:
                          type: string
                          enum:
                          - created
                          - updated
                          - deployed
                        deployedConfig:
                          type: object
                          properties:
                            _id:
                              type: string
                            url:
                              type: string
                            methods:
                              type: array
                              items:
                                type: string
                                enum:
                                - GET
                                - POST
                                - PUT
                                - PATCH
                                - DELETE
                                - OPTION
                            services:
                              type: object
                              properties:
                                action|dataSource:
                                  type: object
                                  properties:
                                    maxHttpConnections:
                                      type: integer
                                    rating:
                                      type: object
                                      properties:
                                        maxCallsCount:
                                          type: integer
                                        periodInMs:
                                          type: integer
                            orgId:
                              type: string
                            tenantId:
                              type: string
                            uid:
                              type: string
                            sandboxName:
                              type: string
                            sandboxId:
                              type: string
              example:
                results:
                - uid: 57e39085-51c1-4f44-9f51-b56b0fa9cb81
                  metadata:
                    createdBy: <user name>
                    createdById: <user adobeId>
                    createdAt: 2019-10-21T08:23:44.273Z
                    lastModifiedBy: <user name>
                    lastModifiedById: <user adobeId>
                    lastModifiedAt: 2019-12-21T08:23:44.273Z
                    lastDeployedBy: <user name>
                    lastDeployedById: <user adobeId>
                    lastDeployedAt: 2020-11-01T17:16:50.929405Z
                  authoringFormatVersion: "1.0"
                  methods:
                  - PUT
                  hasBeenDeployed: true
                  tenantId: prod
                  sandboxName: prod
                  sandboxId: 37fc5780-e3de-11e9-a3bb-d7c554480df4
                  _id: 57e39085-51c1-4f44-9f51-b56b0fa9cb81
                  services:
                    action:
                      maxHttpConnections: 30000
                      rating:
                        maxCallsCount: 1500
                        periodInMs: 1000
                  state: updated
                  url: https://api.example.com/v3/messages/*/send
                  orgId: <IMS Org Id>
                  deployedConfig:
                    _id: 57e39085-51c1-4f44-9f51-b56b0fa9cb81
                    methods:
                    - PUT
                    tenantId: prod
                    sandboxName: prod
                    sandboxId: 37fc5780-e3de-11e9-a3bb-d7c554480df4
                    id: 57e39085-51c1-4f44-9f51-b56b0fa9cb81
                    services:
                      action:
                        rating:
                          maxCallsCount: 500
                          periodInMs: 1000
                    url: https://api.example.com/v3/messages/*/send
                    orgId: <IMS Org Id>
                - uid: fbc64b73-c66b-4e30-b3b1-b9d313bd7c4a
                  metadata:
                    createdBy: <user name>
                    createdById: <user adobeId>
                    createdAt: 2019-10-21T08:23:44.273Z
                    lastModifiedBy: <user name>
                    lastModifiedById: <user adobeId>
                    lastModifiedAt: 2019-10-21T08:23:44.273Z
                    lastDeployedBy: <user name>
                    lastDeployedById: <user adobeId>
                    lastDeployedAt: 2020-11-01T17:16:50.929405Z
                  authoringFormatVersion: "1.0"
                  methods:
                  - GET
                  hasBeenDeployed: true
                  tenantId: prod
                  sandboxName: prod
                  sandboxId: 37fc5780-e3de-11e9-a3bb-d7c554480df4
                  _id: fbc64b73-c66b-4e30-b3b1-b9d313bd7c4a
                  services:
                    dataSource:
                      rating:
                        maxCallsCount: 3000
                        periodInMs: 1000
                  state: deployed
                  url: https://api.example.org/data/2.5/*
                  orgId: <IMS Org Id>
                  deployedConfig:
                    _id: fbc64b73-c66b-4e30-b3b1-b9d313bd7c4a
                    methods:
                    - POST
                    tenantId: prod
                    sandboxName: prod
                    sandboxId: 37fc5780-e3de-11e9-a3bb-d7c554480df4
                    uid: fbc64b73-c66b-4e30-b3b1-b9d313bd7c4a
                    services:
                      dataSource:
                        rating:
                          maxCallsCount: 3000
                          periodInMs: 1000
                    url: https://api.example.org/data/2.5/*
                    orgId: <IMS Org Id>
      x-codegen-request-body-name: body
  /list/throttlingConfigs:
    post:
      tags:
      - Throttling configuration
      summary: List throttlingConfigs configurations
      operationId: com/adobe/voyager/service/authoring/restapis/v1_0/swaggerendpoints/post/list_throttlingconfigs.json
        public
      parameters:
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format "Bearer
          {ACCESS_TOKEN}"
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Specific API key for your unique Journey Orchestration configuration
          {API_KEY}
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: Unique Identifier for your IMS Organization {IMS_ORG}
        required: true
        schema:
          type: string
      - name: x-sandbox-name
        in: header
        description: The name of the sandbox in which the operation will take place
          {SANDBOX_NAME}
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json;charset=utf-8:
            schema:
              type: object
              example: {}
        required: false
      responses:
        200:
          description: 'OK: the operation was successful.'
          content:
            application/json;charset=utf-8:
              schema:
                type: object
              example: {}
      x-codegen-request-body-name: body
  /throttlingConfigs:
    post:
      tags:
      - Throttling configuration
      summary: Create a throttling configuration
      operationId: com/adobe/voyager/service/authoring/restapis/v1_0/swaggerendpoints/post/throttlingconfigs.json
        public
      parameters:
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format "Bearer
          {ACCESS_TOKEN}"
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Specific API key for your unique Journey Orchestration configuration
          {API_KEY}
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: Unique Identifier for your IMS Organization {IMS_ORG}
        required: true
        schema:
          type: string
      - name: x-sandbox-name
        in: header
        description: The name of the sandbox in which the operation will take place
          {SANDBOX_NAME}
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json;charset=utf-8:
            schema:
              type: string
        required: true
      responses:
        200:
          description: 'OK: the operation was successful.'
          content: {}
        500:
          description: 'Internal Server Error: invalid values or missing elements
            in the given payload.'
          content: {}
      x-codegen-request-body-name: payload
  /throttlingConfigs/{uid}:
    get:
      tags:
      - Throttling configuration
      summary: Get an throttling configuration
      operationId: com/adobe/voyager/service/authoring/restapis/v1_0/swaggerendpoints/get/throttlingconfigs_uid.json
        public
      parameters:
      - name: uid
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format "Bearer
          {ACCESS_TOKEN}"
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Specific API key for your unique Journey Orchestration configuration
          {API_KEY}
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: Unique Identifier for your IMS Organization {IMS_ORG}
        required: true
        schema:
          type: string
      - name: x-sandbox-name
        in: header
        description: The name of the sandbox in which the operation will take place
          {SANDBOX_NAME}
        required: true
        schema:
          type: string
      responses:
        200:
          description: 'OK: the operation was successful.'
          content:
            application/json;charset=utf-8:
              schema:
                type: object
        404:
          description: 'Not Found: unknown given Unique ID.'
          content: {}
    put:
      tags:
      - Throttling configuration
      summary: Update a throttling configuration
      operationId: com/adobe/voyager/service/authoring/restapis/v1_0/swaggerendpoints/put/throttlingconfigs_uid.json
        public
      parameters:
      - name: uid
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format "Bearer
          {ACCESS_TOKEN}"
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Specific API key for your unique Journey Orchestration configuration
          {API_KEY}
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: Unique Identifier for your IMS Organization {IMS_ORG}
        required: true
        schema:
          type: string
      - name: x-sandbox-name
        in: header
        description: The name of the sandbox in which the operation will take place
          {SANDBOX_NAME}
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json;charset=utf-8:
            schema:
              type: string
        required: true
      responses:
        200:
          description: 'OK: operation was successful.'
          content: {}
        404:
          description: 'Not Found: unknown given Unique ID.'
          content: {}
        500:
          description: 'Internal Server Error: invalid values or missing elements
            in the given payload.'
          content: {}
      x-codegen-request-body-name: payload
    delete:
      tags:
      - Throttling configuration
      summary: Delete a throttling configuration
      operationId: com/adobe/voyager/service/authoring/restapis/v1_0/swaggerendpoints/delete/throttlingconfigs_uid.json
        public
      parameters:
      - name: forceDelete
        in: query
        schema:
          type: string
      - name: uid
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format "Bearer
          {ACCESS_TOKEN}"
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Specific API key for your unique Journey Orchestration configuration
          {API_KEY}
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: Unique Identifier for your IMS Organization {IMS_ORG}
        required: true
        schema:
          type: string
      - name: x-sandbox-name
        in: header
        description: The name of the sandbox in which the operation will take place
          {SANDBOX_NAME}
        required: true
        schema:
          type: string
      responses:
        200:
          description: 'OK: the operation was successful.'
          content:
            application/json;charset=utf-8:
              schema:
                type: object
        404:
          description: 'Not Found: unknown given Unique ID.'
          content: {}
        500:
          description: 'Internal Server Error: invalid values or missing elements
            in the given payload.'
          content: {}
  /throttlingConfigs/{uid}/canDeploy:
    get:
      tags:
      - Throttling configuration
      summary: Check if an throttling configuration can be deployed
      operationId: com/adobe/voyager/service/authoring/restapis/v1_0/swaggerendpoints/get/throttlingconfigs_uid_candeploy.json
        public
      parameters:
      - name: uid
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format "Bearer
          {ACCESS_TOKEN}"
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Specific API key for your unique Journey Orchestration configuration
          {API_KEY}
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: Unique Identifier for your IMS Organization {IMS_ORG}
        required: true
        schema:
          type: string
      - name: x-sandbox-name
        in: header
        description: The name of the sandbox in which the operation will take place
          {SANDBOX_NAME}
        required: true
        schema:
          type: string
      responses:
        200:
          description: 'OK: the operation was successful.'
          content:
            application/json;charset=utf-8:
              schema:
                type: object
        404:
          description: 'Not Found: unknown given Unique ID.'
          content: {}
  /throttlingConfigs/{uid}/deploy:
    post:
      tags:
      - Throttling configuration
      summary: Deploy an throttling configuration
      operationId: com/adobe/voyager/service/authoring/restapis/v1_0/swaggerendpoints/post/throttlingconfigs_uid_deploy.json
        public
      parameters:
      - name: uid
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format "Bearer
          {ACCESS_TOKEN}"
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Specific API key for your unique Journey Orchestration configuration
          {API_KEY}
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: Unique Identifier for your IMS Organization {IMS_ORG}
        required: true
        schema:
          type: string
      - name: x-sandbox-name
        in: header
        description: The name of the sandbox in which the operation will take place
          {SANDBOX_NAME}
        required: true
        schema:
          type: string
      responses:
        204:
          description: 'No Content: the operation was successful.'
          content: {}
        500:
          description: 'Internal Server Error: the definition of given configuration
            definition was not valid.'
          content: {}
  /throttlingConfigs/{uid}/undeploy:
    post:
      tags:
      - Throttling configuration
      summary: Undeploy throttling configuration
      operationId: com/adobe/voyager/service/authoring/restapis/v1_0/swaggerendpoints/post/throttlingconfigs_uid_undeploy.json
        public
      parameters:
      - name: uid
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: The access token provided after authorization in the format "Bearer
          {ACCESS_TOKEN}"
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: Specific API key for your unique Journey Orchestration configuration
          {API_KEY}
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        in: header
        description: Unique Identifier for your IMS Organization {IMS_ORG}
        required: true
        schema:
          type: string
      - name: x-sandbox-name
        in: header
        description: The name of the sandbox in which the operation will take place
          {SANDBOX_NAME}
        required: true
        schema:
          type: string
      responses:
        204:
          description: 'No Content: the operation was successful or the given configuration
            was not deployed.'
          content: {}
components: {}