openapi: 3.0.0 info: title: 'Akamai: API Endpoint Definition Access tokens Sandboxes API' version: '2' license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0.html servers: - url: https://{hostname}/api-definitions/v2 tags: - name: Sandboxes paths: /sandboxes: post: description: You can create a sandbox based on an existing `property`, `hostname`, or property `version`. Refer to the example JSONs for each use case in the [Recipes](https://techdocs.akamai.com/sandbox/recipes). In order to create a sandbox with this method, you need to have an API client for the `Sandbox API` with read-write access and Property Manager authorization enabled in Control Center. operationId: post-sandbox summary: Create a sandbox tags: - Sandboxes externalDocs: description: See documentation for this operation in Akamai's Sandbox API url: https://techdocs.akamai.com/sandbox/reference/post-sandbox requestBody: required: true content: application/json: example: isClonable: true name: Sandbox-123 property: propertyName: exampledevops.com propertyVersion: 12345 schema: additionalProperties: false description: Create a JSON request body including data members as described in the table below. type: object required: - property properties: isClonable: default: false description: Indicates whether the sandbox can be cloned by other developers. example: '{{isClonable}}' type: boolean name: description: Descriptive name for the new sandbox. If you do not specify a name, the default name will be the `sandboxId`. You will get an error message if the name is not unique. example: '{{name}}' type: string property: additionalProperties: false description: Contains information about the property within the sandbox. minProperties: 1 type: object properties: contractId: description: The identifier you can use to create a sandbox from a specific contract. If you use this, you also need to specify the `groupId`. type: string cpcode: description: Unique code that enables you to isolate sandbox traffic in report data. If you do not specify a value, the system creates one. type: number edgeHostname: description: The edge hostname for the property as configured in Property Manager. May be specified instead of `propertyId`, `hostname`, or `propertyName`. type: string groupId: description: The identifier you can use to create a sandbox from a specific group. If you use this, you also need to specify the `contractId`. type: string hostname: description: The hostname for the property as configured in Property Manager. May be specified instead of `propertyId`, `edgeHostname`, or `propertyName`. type: string propertyId: description: The unique identifier for the property as it appears in Property Manager. May be specified instead of `hostname`, `edgeHostname`, or `propertyName`. type: string propertyName: description: The name of the property as it appears in Property Manager. May be specified instead of `propertyId`, `edgeHostname`, or `hostname`. type: string propertyVersion: description: If not specified, the API uses the version that is active in production. If an active version is not found, the API uses the most recent version. type: number requestHostnames: description: Specifies the hostnames for the request. If you try to create a sandbox property with a `requestHostname` that is not already contained in the property configuration, you may get unexpected results. The Sandbox API automatically converts any specified request hostnames to lower case. type: array items: type: string ruleFormat: description: Specifies the rule format. The rule format is a dated version of the rule object in a property configuration. For more information, refer to the [Property Manager API](https://developer.akamai.com/api/core_features/property_manager/v1.html#understandingruleformats). type: string rules: description: Defines how your website and applications process requests and the behaviors to apply to those requests. Include a `rules` object if you want to apply specific rules to test within your sandbox. The content-handling rules are defined in the [Property Manager API](https://techdocs.akamai.com/property-mgr/reference/rule-trees). type: object x-akamai: file-path: schemas/sandbox-create-request.yaml responses: '201': description: The resource was created. content: application/json: example: createdBy: hgildong createdOn: '2021-10-09T15:20:36.441Z' isClonable: true jwtToken: eyJ0eXA ... qggqqw name: Sandbox-123 sandboxId: 2956607f-854e-11e8-898a-0242ac110002 status: OK _links: clone: href: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002/clone rotateJWT: href: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002/rotateJWT self: href: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002 properties: - sandboxPropertyId: e7b77afe-271b-4159-bdd1-c312ef560cdb additionalRequestHostnamesInProperty: - www.abc1234def.com editedRuleBehaviors: - cpCode filteredRuleBehaviors: - http2 requestHostnames: - shop.exampledevops.com - info.abc1234def.com _links: property: href: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002/properties/e7b77afe-271b-4159-bdd1-c312ef560cdb rules: href: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002/properties/e7b77afe-271b-4159-bdd1-c312ef560cdb/rules validationWarnings: - detail: If your `Origin Server` uses HTTPS, make sure to follow this procedure to avoid a service outage or a security breach when you rotate your origin's certificate. errorLocation: '#/rules/behaviors/0' type: https://problems.luna.akamaiapis.net/papi/v1/validation/validation_message.ssl_delegate_warning_rotate schema: additionalProperties: false description: A sandbox is an isolated development environment used for testing. Each sandbox has a unique identifier, or `sandboxId`. If you create a sandbox with `isClonable` enabled, another developer can quickly create a sandbox with the same configuration settings. When you create a sandbox, give it a meaningful `name`. type: object required: - sandboxId - createdBy - createdOn - name - isClonable - properties properties: _links: additionalProperties: true description: HAL-formatted hypermedia links relating to the sandbox. See [Hypermedia](https://techdocs.akamai.com/sandbox/reference/hypermedia) for more information. minProperties: 1 type: object properties: resource: additionalProperties: true description: Contains a link to the current resource. type: object required: - href properties: href: description: A relative link to access the resource. type: string x-akamai: file-path: schemas/Links.yaml createdBy: description: The identifier for the developer who created the sandbox. type: string createdOn: description: A timestamp representing when the system created the sandbox. format: date-time type: string isClonable: description: Indicates whether the sandbox can be copied for another developer's use. type: boolean jwtToken: description: Java Web Token that is returned in the JSON response when you create a sandbox and is used for authentication. You need this string value to configure the Sandbox Client. type: string name: description: The name of the sandbox defined by the developer when the sandbox was created. If you do not specify a name, the default is the `sandboxId`. type: string properties: description: A list of the properties available for testing in the sandbox environment. A sandbox can contain more than one property, but a given hostname may only be associated to one property within a sandbox. type: array items: additionalProperties: false type: object properties: _links: additionalProperties: true description: HAL-formatted hypermedia links relating to the sandbox's properties. See [Hypermedia](https://techdocs.akamai.com/sandbox/reference/hypermedia) for more information. minProperties: 1 type: object properties: resource: additionalProperties: true description: Contains a link to the current resource. type: object required: - href properties: href: description: A relative link to access the resource. type: string x-akamai: file-path: schemas/Links.yaml additionalRequestHostnamesInProperty: description: A list of hostnames that are associated with the property referenced in the create sandbox POST request that were not included as request hostnames in the JSON body. type: array items: type: string editedRuleBehaviors: description: Behaviors in the rule tree that were modified for use in the Sandbox. type: array items: type: string filteredRuleBehaviors: description: Behaviors in the rule tree that were removed because they are not supported by Sandbox. type: array items: type: string requestHostnames: description: A set of hostnames you can use for testing requests within your sandbox. type: array items: type: string sandboxPropertyId: description: The unique identifier for the sandbox. type: string validationWarnings: description: Contains warnings related to validating the rule tree when a sandbox is created or a property is added. type: array items: additionalProperties: false description: Contains warnings related to validating the rule tree. For details, refer to [Errors](https://techdocs.akamai.com/sandbox/reference/errors). type: object properties: detail: description: Provides specific information related to this validation warning. readOnly: true type: string errorLocation: description: Provides a path expression to the offending rule. readOnly: true type: string type: description: A unique name for this particular validation. readOnly: true type: string x-akamai: file-path: schemas/ValidationWarnings.yaml sandboxId: description: The unique identifier for the sandbox. type: string status: description: The status of the sandbox. `OK` indicates that the sandbox is able to send traffic. type: string statusReason: description: Provides more information when the status field is `ERROR`. type: string x-akamai: file-path: schemas/sandbox.yaml headers: Location: description: Provides a URL link to GET the newly created resource. schema: example: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002/properties/f48caeff-68e5-11e8-8870-0242ac110003 type: string x-akamai: file-path: headers/Location.yaml X-Limit-Sandboxes-Limit: description: Unique identifier for the sandbox. schema: example: 100 type: string x-akamai: file-path: headers/X-Limit-Sandboxes-Limit.yaml X-Limit-Sandboxes-Remaining: description: Unique identifier for the sandbox. schema: example: 98 type: string x-akamai: file-path: headers/X-Limit-Sandboxes-Remaining.yaml parameters: - description: For customers who manage more than one account, this [runs the operation from another account](https://techdocs.akamai.com/developer/docs/manage-many-accounts-with-one-api-client). The Identity and Access Management API provides a [list of available account switch keys](https://techdocs.akamai.com/iam-api/reference/get-client-account-switch-keys). example: '{{accountSwitchKey}}' in: query name: accountSwitchKey required: false schema: example: 1-5C0YLB:1-8BYUX type: string get: description: This operation returns a list of sandboxes. In the response object, you can see the `sandboxId`, the developer who created the sandbox, and the sandbox `name`. The `X-Limit-Sandboxes-Remaining` in the response header indicates the number of remaining sandboxes you can create. Generally, you will only see a list of sandboxes you created. If your Control Center user role has permission to edit Property Manager configurations, you have access to view all the sandboxes within the account. You'll be able to [Delete a sandbox](https://techdocs.akamai.com/sandbox/reference/delete-sandbox) returned in the list. You will only be able to [Update a rule tree](https://techdocs.akamai.com/sandbox/reference/put-sandbox-properties-rules) if your user role has permission to edit the property within your Property Manager configuration. For more information on user roles and permissions, refer to [Identity and Access Management](https://techdocs.akamai.com/iam/docs/welcome-id-access-mgmt). operationId: get-sandboxes summary: List sandboxes tags: - Sandboxes externalDocs: description: See documentation for this operation in Akamai's Sandbox API url: https://techdocs.akamai.com/sandbox/reference/get-sandboxes responses: '200': description: Successful operation. content: application/json: example: accountId: A-CCT3456 _links: self: href: /sandbox-api/v1/sandboxes sandboxes: - createdBy: jsmith name: STAR-04 sandboxId: a7123f13-6f14-11e8-8592-0242ac110002 _links: rotateJWT: href: /sandbox-api/v1/sandboxes/a7123f13-6f14-11e8-8592-0242ac110002/rotateJWT self: href: /sandbox-api/v1/sandboxes/a7123f13-6f14-11e8-8592-0242ac110002 schema: additionalProperties: false type: object required: - accountId - sandboxes properties: accountId: description: Unique identifier for an account. type: string sandboxes: description: The set of sandboxes created by the developer. type: array items: additionalProperties: false description: Detailed information on the sandbox. type: object required: - sandboxId - createdBy - createdOn - name - isClonable - properties properties: _links: additionalProperties: true description: HAL-formatted hypermedia links relating to the sandbox. See [Hypermedia](https://techdocs.akamai.com/sandbox/reference/hypermedia) for more information. minProperties: 1 type: object properties: resource: additionalProperties: true description: Contains a link to the current resource. type: object required: - href properties: href: description: A relative link to access the resource. type: string x-akamai: file-path: schemas/Links.yaml createdBy: description: The identifier for the developer who created the sandbox. type: string createdOn: description: A timestamp representing when the system created the sandbox. format: date-time type: string isClonable: description: Indicates whether the sandbox can be copied for another developer's use. type: boolean jwtToken: description: Java Web Token that is returned in the JSON response when you create a sandbox and is used for authentication. You need this string value to configure the Sandbox Client. type: string name: description: The name of the sandbox defined by the developer when the sandbox was created. If you do not specify a name, the default is the `sandboxId`. type: string properties: description: A list of the properties available for testing in the sandbox environment. A sandbox can contain more than one property, but a given hostname may only be associated to one property within a sandbox. type: array items: additionalProperties: false type: object properties: _links: additionalProperties: true description: HAL-formatted hypermedia links relating to the sandbox's properties. See [Hypermedia](https://techdocs.akamai.com/sandbox/reference/hypermedia) for more information. minProperties: 1 type: object properties: resource: additionalProperties: true description: Contains a link to the current resource. type: object required: - href properties: href: description: A relative link to access the resource. type: string x-akamai: file-path: schemas/Links.yaml additionalRequestHostnamesInProperty: description: A list of hostnames that are associated with the property referenced in the create sandbox POST request that were not included as request hostnames in the JSON body. type: array items: type: string editedRuleBehaviors: description: Behaviors in the rule tree that were modified for use in the Sandbox. type: array items: type: string filteredRuleBehaviors: description: Behaviors in the rule tree that were removed because they are not supported by Sandbox. type: array items: type: string requestHostnames: description: A set of hostnames you can use for testing requests within your sandbox. type: array items: type: string sandboxPropertyId: description: The unique identifier for the sandbox. type: string validationWarnings: description: Contains warnings related to validating the rule tree when a sandbox is created or a property is added. type: array items: additionalProperties: false description: Contains warnings related to validating the rule tree. For details, refer to [Errors](https://techdocs.akamai.com/sandbox/reference/errors). type: object properties: detail: description: Provides specific information related to this validation warning. readOnly: true type: string errorLocation: description: Provides a path expression to the offending rule. readOnly: true type: string type: description: A unique name for this particular validation. readOnly: true type: string x-akamai: file-path: schemas/ValidationWarnings.yaml sandboxId: description: The unique identifier for the sandbox. type: string status: description: The status of the sandbox. `OK` indicates that the sandbox is able to send traffic. type: string statusReason: description: Provides more information when the status field is `ERROR`. type: string x-akamai: file-path: schemas/sandbox.yaml x-akamai: file-path: schemas/sandboxes-get-response.yaml headers: X-Limit-Sandboxes-Limit: description: Unique identifier for the sandbox. schema: example: 100 type: string x-akamai: file-path: headers/X-Limit-Sandboxes-Limit.yaml X-Limit-Sandboxes-Remaining: description: Unique identifier for the sandbox. schema: example: 98 type: string x-akamai: file-path: headers/X-Limit-Sandboxes-Remaining.yaml parameters: - description: __Enum__ Indicates the access level of the request. Specify either `USER` to perform the request for the sandboxes that you can access, or `ACCOUNT` to perform the request for all sandboxes within the account. example: '{{access}}' in: query name: access schema: default: USER example: ACCOUNT type: string enum: - USER - ACCOUNT x-akamai: file-path: parameters/accessParam-query.yaml - description: For customers who manage more than one account, this [runs the operation from another account](https://techdocs.akamai.com/developer/docs/manage-many-accounts-with-one-api-client). The Identity and Access Management API provides a [list of available account switch keys](https://techdocs.akamai.com/iam-api/reference/get-client-account-switch-keys). example: '{{accountSwitchKey}}' in: query name: accountSwitchKey required: false schema: example: 1-5C0YLB:1-8BYUX type: string /sandboxes/{sandboxId}: parameters: - description: Unique identifier for the sandbox. example: '{{sandboxId}}' in: path name: sandboxId required: true schema: example: 2956607f-854e-11e8-898a-0242ac110002 type: string x-akamai: file-path: parameters/sandboxId-path.yaml get: description: Get a specific sandbox based on `sandboxId`. operationId: get-sandbox summary: Get a sandbox tags: - Sandboxes externalDocs: description: See documentation for this operation in Akamai's Sandbox API url: https://techdocs.akamai.com/sandbox/reference/get-sandbox responses: '200': description: Successful operation. content: application/json: example: createdBy: jsmith createdOn: '2021-07-11T21:05:38.227Z' isClonable: true name: Sandbox-clone-1 sandboxId: 2956607f-854e-11e8-898a-0242ac110002 status: OK _links: clone: href: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002/clone rotateJWT: href: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002/rotateJWT self: href: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002 properties: - requestHostnames: - shop.example.com _links: property: href: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002/properties/29b5e5a0-854e-11e8-898a-0242ac110002 rules: href: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002/properties/29b5e5a0-854e-11e8-898a-0242ac110002/rules schema: additionalProperties: false description: A sandbox is an isolated development environment used for testing. Each sandbox has a unique identifier, or `sandboxId`. If you create a sandbox with `isClonable` enabled, another developer can quickly create a sandbox with the same configuration settings. When you create a sandbox, give it a meaningful `name`. type: object required: - sandboxId - createdBy - createdOn - name - isClonable - properties properties: _links: additionalProperties: true description: HAL-formatted hypermedia links relating to the sandbox. See [Hypermedia](https://techdocs.akamai.com/sandbox/reference/hypermedia) for more information. minProperties: 1 type: object properties: resource: additionalProperties: true description: Contains a link to the current resource. type: object required: - href properties: href: description: A relative link to access the resource. type: string x-akamai: file-path: schemas/Links.yaml createdBy: description: The identifier for the developer who created the sandbox. type: string createdOn: description: A timestamp representing when the system created the sandbox. format: date-time type: string isClonable: description: Indicates whether the sandbox can be copied for another developer's use. type: boolean jwtToken: description: Java Web Token that is returned in the JSON response when you create a sandbox and is used for authentication. You need this string value to configure the Sandbox Client. type: string name: description: The name of the sandbox defined by the developer when the sandbox was created. If you do not specify a name, the default is the `sandboxId`. type: string properties: description: A list of the properties available for testing in the sandbox environment. A sandbox can contain more than one property, but a given hostname may only be associated to one property within a sandbox. type: array items: additionalProperties: false type: object properties: _links: additionalProperties: true description: HAL-formatted hypermedia links relating to the sandbox's properties. See [Hypermedia](https://techdocs.akamai.com/sandbox/reference/hypermedia) for more information. minProperties: 1 type: object properties: resource: additionalProperties: true description: Contains a link to the current resource. type: object required: - href properties: href: description: A relative link to access the resource. type: string x-akamai: file-path: schemas/Links.yaml additionalRequestHostnamesInProperty: description: A list of hostnames that are associated with the property referenced in the create sandbox POST request that were not included as request hostnames in the JSON body. type: array items: type: string editedRuleBehaviors: description: Behaviors in the rule tree that were modified for use in the Sandbox. type: array items: type: string filteredRuleBehaviors: description: Behaviors in the rule tree that were removed because they are not supported by Sandbox. type: array items: type: string requestHostnames: description: A set of hostnames you can use for testing requests within your sandbox. type: array items: type: string sandboxPropertyId: description: The unique identifier for the sandbox. type: string validationWarnings: description: Contains warnings related to validating the rule tree when a sandbox is created or a property is added. type: array items: additionalProperties: false description: Contains warnings related to validating the rule tree. For details, refer to [Errors](https://techdocs.akamai.com/sandbox/reference/errors). type: object properties: detail: description: Provides specific information related to this validation warning. readOnly: true type: string errorLocation: description: Provides a path expression to the offending rule. readOnly: true type: string type: description: A unique name for this particular validation. readOnly: true type: string x-akamai: file-path: schemas/ValidationWarnings.yaml sandboxId: description: The unique identifier for the sandbox. type: string status: description: The status of the sandbox. `OK` indicates that the sandbox is able to send traffic. type: string statusReason: description: Provides more information when the status field is `ERROR`. type: string x-akamai: file-path: schemas/sandbox.yaml parameters: - description: __Enum__ Indicates the access level of the request. Specify either `USER` to perform the request for the sandboxes that you can access, or `ACCOUNT` to perform the request for all sandboxes within the account. example: '{{access}}' in: query name: access schema: default: USER example: ACCOUNT type: string enum: - USER - ACCOUNT x-akamai: file-path: parameters/accessParam-query.yaml - description: For customers who manage more than one account, this [runs the operation from another account](https://techdocs.akamai.com/developer/docs/manage-many-accounts-with-one-api-client). The Identity and Access Management API provides a [list of available account switch keys](https://techdocs.akamai.com/iam-api/reference/get-client-account-switch-keys). example: '{{accountSwitchKey}}' in: query name: accountSwitchKey required: false schema: example: 1-5C0YLB:1-8BYUX type: string put: description: Enable `isClonable` if you have preconfigured the settings for the sandbox and want to make it possible for other developers to create an exact replica in their development environment. You can also update the sandbox `name` to make it easy to identify when returned in a list or in a log line. operationId: put-sandbox summary: Modify a sandbox tags: - Sandboxes externalDocs: description: See documentation for this operation in Akamai's Sandbox API url: https://techdocs.akamai.com/sandbox/reference/put-sandbox requestBody: required: true content: application/json: example: isClonable: true name: SHOP-123212 schema: additionalProperties: false description: A sandbox is an isolated development environment used for testing. Each sandbox has a unique identifier, or `sandboxId`. If you create a sandbox with `isClonable` enabled, another developer can quickly create a sandbox with the same configuration settings. When you create a sandbox, give it a meaningful `name`. type: object required: - sandboxId - createdBy - createdOn - name - isClonable - properties properties: _links: additionalProperties: true description: HAL-formatted hypermedia links relating to the sandbox. See [Hypermedia](https://techdocs.akamai.com/sandbox/reference/hypermedia) for more information. minProperties: 1 type: object properties: resource: additionalProperties: true description: Contains a link to the current resource. type: object required: - href properties: href: description: A relative link to access the resource. type: string x-akamai: file-path: schemas/Links.yaml createdBy: description: The identifier for the developer who created the sandbox. example: '{{createdBy}}' type: string createdOn: description: A timestamp representing when the system created the sandbox. example: '{{createdOn}}' format: date-time type: string isClonable: description: Indicates whether the sandbox can be copied for another developer's use. example: '{{isClonable}}' type: boolean jwtToken: description: Java Web Token that is returned in the JSON response when you create a sandbox and is used for authentication. You need this string value to configure the Sandbox Client. example: '{{jwtToken}}' type: string name: description: The name of the sandbox defined by the developer when the sandbox was created. If you do not specify a name, the default is the `sandboxId`. example: '{{name}}' type: string properties: description: A list of the properties available for testing in the sandbox environment. A sandbox can contain more than one property, but a given hostname may only be associated to one property within a sandbox. type: array items: additionalProperties: false type: object properties: _links: additionalProperties: true description: HAL-formatted hypermedia links relating to the sandbox's properties. See [Hypermedia](https://techdocs.akamai.com/sandbox/reference/hypermedia) for more information. minProperties: 1 type: object properties: resource: additionalProperties: true description: Contains a link to the current resource. type: object required: - href properties: href: description: A relative link to access the resource. type: string x-akamai: file-path: schemas/Links.yaml additionalRequestHostnamesInProperty: description: A list of hostnames that are associated with the property referenced in the create sandbox POST request that were not included as request hostnames in the JSON body. type: array items: type: string editedRuleBehaviors: description: Behaviors in the rule tree that were modified for use in the Sandbox. type: array items: type: string filteredRuleBehaviors: description: Behaviors in the rule tree that were removed because they are not supported by Sandbox. type: array items: type: string requestHostnames: description: A set of hostnames you can use for testing requests within your sandbox. type: array items: type: string sandboxPropertyId: description: The unique identifier for the sandbox. type: string validationWarnings: description: Contains warnings related to validating the rule tree when a sandbox is created or a property is added. type: array items: additionalProperties: false description: Contains warnings related to validating the rule tree. For details, refer to [Errors](https://techdocs.akamai.com/sandbox/reference/errors). type: object properties: detail: description: Provides specific information related to this validation warning. readOnly: true type: string errorLocation: description: Provides a path expression to the offending rule. readOnly: true type: string type: description: A unique name for this particular validation. readOnly: true type: string x-akamai: file-path: schemas/ValidationWarnings.yaml sandboxId: description: The unique identifier for the sandbox. example: '{{sandboxId}}' type: string status: description: The status of the sandbox. `OK` indicates that the sandbox is able to send traffic. example: '{{status}}' type: string statusReason: description: Provides more information when the status field is `ERROR`. example: '{{statusReason}}' type: string x-akamai: file-path: schemas/sandbox.yaml responses: '204': description: The request was successfully processed. content: '*/*': {} parameters: - description: For customers who manage more than one account, this [runs the operation from another account](https://techdocs.akamai.com/developer/docs/manage-many-accounts-with-one-api-client). The Identity and Access Management API provides a [list of available account switch keys](https://techdocs.akamai.com/iam-api/reference/get-client-account-switch-keys). example: '{{accountSwitchKey}}' in: query name: accountSwitchKey required: false schema: example: 1-5C0YLB:1-8BYUX type: string delete: description: Remove a specific sandbox instance based on `sandboxId`. This is useful when you have completed testing and no longer need the sandbox, or when you are approaching the limit. There is a limit of 100 sandbox instances for each Control Center account. The `X-Limit-Sandboxes-Remaining` value in the response header indicates how many sandbox instances you have remaining to create. operationId: delete-sandbox summary: Delete a sandbox tags: - Sandboxes externalDocs: description: See documentation for this operation in Akamai's Sandbox API url: https://techdocs.akamai.com/sandbox/reference/delete-sandbox responses: '204': description: The request was successfully processed. content: '*/*': {} parameters: - description: __Enum__ Indicates the access level of the request. Specify either `USER` to perform the request for the sandboxes that you can access, or `ACCOUNT` to perform the request for all sandboxes within the account. example: '{{access}}' in: query name: access schema: default: USER example: ACCOUNT type: string enum: - USER - ACCOUNT x-akamai: file-path: parameters/accessParam-query.yaml - description: For customers who manage more than one account, this [runs the operation from another account](https://techdocs.akamai.com/developer/docs/manage-many-accounts-with-one-api-client). The Identity and Access Management API provides a [list of available account switch keys](https://techdocs.akamai.com/iam-api/reference/get-client-account-switch-keys). example: '{{accountSwitchKey}}' in: query name: accountSwitchKey required: false schema: example: 1-5C0YLB:1-8BYUX type: string /sandboxes/{sandboxId}/clone: parameters: - description: Unique identifier for the sandbox. example: '{{sandboxId}}' in: path name: sandboxId required: true schema: example: 2956607f-854e-11e8-898a-0242ac110002 type: string x-akamai: file-path: parameters/sandboxId-path.yaml post: description: Create a new sandbox instance based on the specified `sandboxId`. You can clone a sandbox that has `isClonable` enabled. This is useful if you want to copy a sandbox that was preconfigured by another developer within your organization. operationId: post-sandbox-clone summary: Clone a sandbox tags: - Sandboxes externalDocs: description: See documentation for this operation in Akamai's Sandbox API url: https://techdocs.akamai.com/sandbox/reference/post-sandbox-clone requestBody: required: true content: application/json: example: name: sandbox-clone-1 schema: additionalProperties: false description: You can clone a sandbox based on a pre-configured sandbox if you have the `sandboxId`. type: object properties: name: description: Descriptive name for the new sandbox. example: '{{name}}' type: string x-akamai: file-path: schemas/sandbox-clone-request.yaml responses: '201': description: Successful operation. content: application/json: example: createdBy: adevi createdOn: '2021-10-09T15:20:36.441Z' isClonable: true jwtToken: eyJ0eXA ... qggqqw name: Sandbox-123 sandboxId: 2956607f-854e-11e8-898a-0242ac110002 status: OK _links: clone: href: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002/clone rotateJWT: href: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002/rotateJWT self: href: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002 properties: - sandboxPropertyId: e7b77afe-271b-4159-bdd1-c312ef560cdb additionalRequestHostnamesInProperty: - www.abc1234def.com editedRuleBehaviors: - cpCode filteredRuleBehaviors: - http2 requestHostnames: - shop.exampledevops.com - info.abc1234def.com _links: property: href: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002/properties/e7b77afe-271b-4159-bdd1-c312ef560cdb rules: href: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002/properties/e7b77afe-271b-4159-bdd1-c312ef560cdb/rules validationWarnings: - detail: If your `Origin Server` uses HTTPS, make sure to follow this procedure to avoid a service outage or a security breach when you rotate your origin's certificate. errorLocation: '#/rules/behaviors/0' type: https://problems.luna.akamaiapis.net/papi/v1/validation/validation_message.ssl_delegate_warning_rotate schema: additionalProperties: false description: A sandbox is an isolated development environment used for testing. Each sandbox has a unique identifier, or `sandboxId`. If you create a sandbox with `isClonable` enabled, another developer can quickly create a sandbox with the same configuration settings. When you create a sandbox, give it a meaningful `name`. type: object required: - sandboxId - createdBy - createdOn - name - isClonable - properties properties: _links: additionalProperties: true description: HAL-formatted hypermedia links relating to the sandbox. See [Hypermedia](https://techdocs.akamai.com/sandbox/reference/hypermedia) for more information. minProperties: 1 type: object properties: resource: additionalProperties: true description: Contains a link to the current resource. type: object required: - href properties: href: description: A relative link to access the resource. type: string x-akamai: file-path: schemas/Links.yaml createdBy: description: The identifier for the developer who created the sandbox. type: string createdOn: description: A timestamp representing when the system created the sandbox. format: date-time type: string isClonable: description: Indicates whether the sandbox can be copied for another developer's use. type: boolean jwtToken: description: Java Web Token that is returned in the JSON response when you create a sandbox and is used for authentication. You need this string value to configure the Sandbox Client. type: string name: description: The name of the sandbox defined by the developer when the sandbox was created. If you do not specify a name, the default is the `sandboxId`. type: string properties: description: A list of the properties available for testing in the sandbox environment. A sandbox can contain more than one property, but a given hostname may only be associated to one property within a sandbox. type: array items: additionalProperties: false type: object properties: _links: additionalProperties: true description: HAL-formatted hypermedia links relating to the sandbox's properties. See [Hypermedia](https://techdocs.akamai.com/sandbox/reference/hypermedia) for more information. minProperties: 1 type: object properties: resource: additionalProperties: true description: Contains a link to the current resource. type: object required: - href properties: href: description: A relative link to access the resource. type: string x-akamai: file-path: schemas/Links.yaml additionalRequestHostnamesInProperty: description: A list of hostnames that are associated with the property referenced in the create sandbox POST request that were not included as request hostnames in the JSON body. type: array items: type: string editedRuleBehaviors: description: Behaviors in the rule tree that were modified for use in the Sandbox. type: array items: type: string filteredRuleBehaviors: description: Behaviors in the rule tree that were removed because they are not supported by Sandbox. type: array items: type: string requestHostnames: description: A set of hostnames you can use for testing requests within your sandbox. type: array items: type: string sandboxPropertyId: description: The unique identifier for the sandbox. type: string validationWarnings: description: Contains warnings related to validating the rule tree when a sandbox is created or a property is added. type: array items: additionalProperties: false description: Contains warnings related to validating the rule tree. For details, refer to [Errors](https://techdocs.akamai.com/sandbox/reference/errors). type: object properties: detail: description: Provides specific information related to this validation warning. readOnly: true type: string errorLocation: description: Provides a path expression to the offending rule. readOnly: true type: string type: description: A unique name for this particular validation. readOnly: true type: string x-akamai: file-path: schemas/ValidationWarnings.yaml sandboxId: description: The unique identifier for the sandbox. type: string status: description: The status of the sandbox. `OK` indicates that the sandbox is able to send traffic. type: string statusReason: description: Provides more information when the status field is `ERROR`. type: string x-akamai: file-path: schemas/sandbox.yaml headers: Location: description: Provides a URL link to GET the newly created resource. schema: example: /sandbox-api/v1/sandboxes/2956607f-854e-11e8-898a-0242ac110002/properties/f48caeff-68e5-11e8-8870-0242ac110003 type: string x-akamai: file-path: headers/Location.yaml X-Limit-Sandboxes-Limit: description: Unique identifier for the sandbox. schema: example: 100 type: string x-akamai: file-path: headers/X-Limit-Sandboxes-Limit.yaml X-Limit-Sandboxes-Remaining: description: Unique identifier for the sandbox. schema: example: 98 type: string x-akamai: file-path: headers/X-Limit-Sandboxes-Remaining.yaml parameters: - description: For customers who manage more than one account, this [runs the operation from another account](https://techdocs.akamai.com/developer/docs/manage-many-accounts-with-one-api-client). The Identity and Access Management API provides a [list of available account switch keys](https://techdocs.akamai.com/iam-api/reference/get-client-account-switch-keys). example: '{{accountSwitchKey}}' in: query name: accountSwitchKey required: false schema: example: 1-5C0YLB:1-8BYUX type: string externalDocs: description: See documentation for Akamai's API Endpoint Definition API url: https://techdocs.akamai.com/api-definitions/reference x-readme: samples-languages: - curl - python - node