openapi: 3.0.0
info:
title: 'Akamai: API Endpoint Definition Access tokens Properties 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: Properties
paths:
/ids/{edgeWorkerId}/properties:
parameters:
- description: Unique identifier for an EdgeWorker.
example: '{{edgeWorkerId}}'
in: path
name: edgeWorkerId
required: true
schema:
example: 42
minimum: 1
type: integer
x-akamai:
file-path: parameters/edgeWorkerId-path.yaml
get:
description: View the list of properties using an existing EdgeWorker ID. You can limit the results to active properties.
operationId: get-properties
summary: Akamai List Properties
tags:
- Properties
externalDocs:
description: See documentation for this operation in Akamai's EdgeWorkers API
url: https://techdocs.akamai.com/edgeworkers/reference/get-properties
responses:
'200':
description: This section describes a list of properties.
content:
application/json:
example:
limitedAccessToProperties: false
properties:
- latestVersion: 147
productionVersion: null
propertyId: 4567
propertyName: www.customer.com
stagingVersion: 147
- latestVersion: 56
productionVersion: 55
propertyId: 6789
propertyName: www.other.customer.com
stagingVersion: 56
schema:
additionalProperties: false
description: This object collects data about any properties that enable EdgeWorkers.
type: object
required:
- properties
properties:
limitedAccessToProperties:
description: Whether you have a limited access to properties. Only properties you have access to are listed.
type: boolean
properties:
description: List of properties.
minItems: 0
type: array
items:
additionalProperties: false
description: This object collects data about a specific property that enable EdgeWorkers.
type: object
required:
- propertyId
- propertyName
- stagingVersion
- productionVersion
- latestVersion
properties:
latestVersion:
description: Specifies the most recent version of the property.
minimum: 1
type: integer
productionVersion:
description: The most recent version to be activated to the production network, otherwise null.
minimum: 1
nullable: true
type: integer
propertyId:
description: Unique identifier of the property.
minimum: 1
type: integer
propertyName:
description: Name of the property.
minLength: 1
type: string
stagingVersion:
description: The most recent version to be activated to the test network, otherwise null.
minimum: 1
nullable: true
type: integer
x-akamai:
file-path: schemas/property-get-200.yaml
x-akamai:
file-path: schemas/properties-get-200.yaml
parameters:
- description: When enabled, limits results to active properties.
example: '{{activeOnly}}'
in: query
name: activeOnly
schema:
example: true
type: boolean
x-akamai:
file-path: parameters/activeOnly-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
/properties:
x-akamai:
file-path: paths/properties.yaml
path-for-file: /properties
x-akamai-descriptor-tools:
displayName: properties
group: Properties
post:
description: This operation either creates a new property from scratch or bases one on another property's rule tree and optionally its set of assigned hostnames. Version 1 of a new property is created automatically. PAPI's ability to create and clone new properties means that you can design a system of rule templates targeted to specific domains, rather than maintain a single set of rules with conditional logic for your full range of domains. Maintaining properties manually within the Control Center interface limited you to that more consolidated approach, but you can deploy rules more efficiently using PAPI. In either case, PAPI makes it much easier for you to support a large, flexible set of domains.
operationId: post-properties
summary: Akamai Create or Clone a Property
tags:
- Properties
externalDocs:
description: See documentation for this operation in Akamai's Property Manager API
url: https://techdocs.akamai.com/property-mgr/reference/post-properties
requestBody:
required: true
content:
application/json:
example:
productId: prd_Alta
propertyName: my.new.property1.com
ruleFormat: v2018-09-12
schema:
$schema: http://json-schema.org/draft-04-schema#
description: Contains configuration data to apply to edge content. Relevant response objects appear within the outer envelope's `properties.items` array.
id: resource:/descriptors/papi/v1/schemas/CreateOrClonePropertyRequestV0.json#
javaType: com.akamai.luna.papi.model.PropertyCreateRequest
type: object
required:
- productId
- propertyName
properties:
cloneFrom:
description: Optionally identifies another property instance to clone when making a POST request to create a new property. You need to assign the same contract and group to the cloned property.
type: object
required:
- propertyId
- version
properties:
cloneFromVersionEtag:
description: Performs an ETag data integrity check on the original property. See [Concurrency control](https://techdocs.akamai.com/property-mgr/reference/concurrency-control) for guidance.
type: string
copyHostnames:
default: false
description: Assigns the same set of hostnames to the new property, `false` by default.
type: boolean
propertyId:
description: Specifies the property to clone. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on how to omit the ID's `prp_` prefix. Don't use this value if you want to exchange data with the Identity and Access Manager API. See [Manage properties and includes](https://techdocs.akamai.com/iam-api/reference/manage-access-to-properties-and-includes).
type: string
version:
description: Specifies the version of the property to clone.
minimum: 1
type: integer
productId:
description: Unique identifier for the product. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on omitting the value's `prd_` prefix.
example: '{{productId}}'
type: string
propertyName:
description: A descriptive name for the property.
example: '{{propertyName}}'
type: string
ruleFormat:
description: On GET, reflects the property's current format. Otherwise on POST, assigns a specific rule format to the property. Ignored on PUT, since you need to modify the `Content-Type` to change rule formats. For details, see [Update rules to a newer set of features](https://techdocs.akamai.com/property-mgr/reference/manage-rules).
example: '{{ruleFormat}}'
type: string
useHostnameBucket:
default: false
description: Available if you have the `Hostname Bucket` module added to your contract, `false` by default. When enabled, this creates a special type of property where you can add or remove property hostnames without incrementing property versions.
example: '{{useHostnameBucket}}'
type: boolean
x-akamai:
file-path: schemas/property-create-request.yaml
responses:
'201':
description: The response provides a URL link to the newly created or cloned property.
content:
application/json:
example:
propertyLink: /papi/v0/properties/prp_173137?contractId=ctr_C-0N7RAC7&groupId=grp_15225
schema:
$schema: http://json-schema.org/draft-04-schema#
additionalProperties: false
description: Provides a hypermedia link to a newly created resource. The response's single member name indicates the type of resource.
id: resource:/descriptors/papi/v1/schemas/PostPropertyResponse.json#
type: object
required:
- propertyLink
properties:
propertyLink:
description: Links the newly created property.
type: string
x-akamai:
file-path: schemas/property-create-response.yaml
headers:
Location:
description: Provides a URL path you can GET the newly created resource from.
schema:
type: string
x-akamai:
file-path: headers/Location.yaml
X-Limit-Properties-Per-Contract-Limit:
description: Maximum number of activated property configurations per contract.
schema:
type: string
x-akamai:
file-path: headers/X-Limit-Properties-Per-Contract-Limit.yaml
X-Limit-Properties-Per-Contract-Remaining:
description: Remaining number of activated property configurations per contract. See [Rate and resource limiting](https://techdocs.akamai.com/property-mgr/reference/rate-and-resource-limiting) for details.
schema:
type: string
x-akamai:
file-path: headers/X-Limit-Properties-Per-Contract-Remaining.yaml
'400':
description: '[Bad request](https://techdocs.akamai.com/property-mgr/reference/400).'
content:
application/problem+json:
example:
detail: The system cannot understand your request. Please check the syntax and correct any problems.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 400
title: Bad Request
type: https://problems.luna.akamaiapis.net/papi/v0/http/bad-request
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/400.yaml
'401':
description: '[Unauthorized](https://techdocs.akamai.com/property-mgr/reference/401).'
content:
application/problem+json:
example:
detail: The request requires authentication.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 401
title: Unauthorized
type: https://problems.luna.akamaiapis.net/papi/v0/http/unauthorized
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/401.yaml
'403':
description: '[Forbidden](https://techdocs.akamai.com/property-mgr/reference/403).'
content:
application/problem+json:
example:
detail: The authorization token you provided does not allow access to this resource.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 403
title: Forbidden
type: https://problems.luna.akamaiapis.net/papi/v1/http/forbidden
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/403.yaml
'404':
description: '[Not found](https://techdocs.akamai.com/property-mgr/reference/404).'
content:
application/problem+json:
example:
detail: The system was unable to locate the requested resource.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 404
title: Not Found
type: https://problems.luna.akamaiapis.net/papi/v1/http/not-found
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/404.yaml
'405':
description: '[Method not allowed](https://techdocs.akamai.com/property-mgr/reference/405).'
content:
application/problem+json:
example:
detail: The system does not support the method you provided for this resource.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 405
title: Method not allowed
type: https://problems.luna.akamaiapis.net/papi/v1/http/method-not-allowed
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/405.yaml
'413':
description: '[Request entity too large](https://techdocs.akamai.com/property-mgr/reference/413).'
content:
application/problem+json:
example:
detail: TBD
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 413
title: Request entity too large
type: https://problems.luna.akamaiapis.net/papi/v1/http/
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/413.yaml
'415':
description: '[Unsupported media type](https://techdocs.akamai.com/property-mgr/reference/415).'
content:
application/problem+json:
example:
detail: Our system does not support requests in the format you're sending.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 415
title: Unsupported Media Type
type: https://problems.luna.akamaiapis.net/papi/v1/http/unsupported-media-type
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/415.yaml
'429':
description: '[Too many requests](https://techdocs.akamai.com/property-mgr/reference/429).'
content:
application/problem+json:
example:
detail: Too many includes exist on contract ctr_1-12345. You must delete an include before continuing.
instance: /papi/v1/includes?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
instanceKey: 1-12345
limit: 500
limitKey: INCLUDES_PER_CONTRACT
remaining: 0
status: 429
title: Too many includes
type: https://problems.luna.akamaiapis.net/papi/v1/limit-exceeded
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
- limitKey
- instanceKey
- limit
- remaining
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
instanceKey:
description: Identifies the resource the limit is imposed on.
minLength: 1
type: string
limit:
description: The overall limit.
type: integer
limitKey:
description: The limit that got exceeded with the operation.
minLength: 1
type: string
remaining:
description: Number of items left to deploy.
type: integer
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-429.yaml
x-akamai:
file-path: errors/429.yaml
'500':
description: '[Internal server error](https://techdocs.akamai.com/property-mgr/reference/500).'
content:
application/problem+json:
example:
detail: Our system is experiencing errors. We''ll get this fixed as soon as possible.
instance: /papi/v1/properties/12345/activations#abc12345abcc02a7
status: 500
title: Internal Server Error
type: https://problems.luna.akamaiapis.net/papi/proxy/internal-server-error
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/500.yaml
parameters:
- description: __Enum__ Sets whether to represent [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) in response data. Set to `false` when exchanging PAPI data with other APIs.
example: '{{PAPI-Use-Prefixes}}'
in: header
name: PAPI-Use-Prefixes
required: true
schema:
example: 'false'
type: string
enum:
- 'true'
- 'false'
x-akamai:
file-path: parameters/PAPI-Use-Prefixes-header.yaml
- description: Unique identifier for the contract. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on omitting the value's `ctr_` prefix.
example: '{{contractId}}'
in: query
name: contractId
required: true
schema:
example: ctr_1-1TJZFW
type: string
x-akamai:
file-path: parameters/contractId-required.yaml
- description: Unique identifier for the group. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on omitting the value's `grp_` prefix.
example: '{{groupId}}'
in: query
name: groupId
required: true
schema:
example: grp_15166
type: string
x-akamai:
file-path: parameters/groupId-required.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
get:
description: This operation lists properties available for the current contract and group. Use optional query parameters to only show properties that were modified within a specified time range or on a selected network. If you specify the `modifiedSince` parameter, `contractId` and `groupId` become optional. If you don't identify a contract and group, the operation lists all properties you have access to, modified within a specified time range.
operationId: get-properties
summary: Akamai List Properties
tags:
- Properties
externalDocs:
description: See documentation for this operation in Akamai's Property Manager API
url: https://techdocs.akamai.com/property-mgr/reference/get-properties
responses:
'200':
description: The response lists all properties available for the requested contract and group.
content:
application/json:
example:
properties:
items:
- accountId: act_A-CCT1234
assetId: aid_101
contractId: ctr_K-0N7RAK71
groupId: grp_15225
latestVersion: 2
note: Notes about example.com
productionVersion: null
propertyId: prp_175780
propertyName: example.com
stagingVersion: 1
- accountId: act_A-CCT7890
assetId: aid_101
contractId: ctr_C-0N7RAC71
groupId: grp_15225
latestVersion: 1
note: Notes about m.example.com
productionVersion: null
propertyId: prp_175781
propertyName: m.example.com
stagingVersion: null
schema:
$schema: http://json-schema.org/draft-04/schema#
additionalProperties: false
description: A common outer wrapping object structure. It provides additional contextual details for a set of requested data. The data itself is available under various inner members' `items` array, even individual items.
id: resource:/descriptors/papi/v1/schemas/GetPropertyResponse.json#
type: object
properties:
properties:
additionalProperties: false
description: The set of requested properties, available within an `items` array.
type: object
properties:
items:
description: Configuration data to apply to edge content. Relevant response objects appear within the outer envelope's `properties.items` array.
type: array
items:
additionalProperties: false
type: object
required:
- accountId
- contractId
- groupId
- propertyId
- propertyName
- latestVersion
- stagingVersion
- productionVersion
- assetId
- note
properties:
accountId:
description: Identifies the account the property belongs to. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on how to omit the ID's `act_` prefix.
readOnly: true
type: string
assetId:
description: An alternative identifier for the property. Use this value to key the property in the Identity and Access Management API. See [Manage properties and includes](https://techdocs.akamai.com/iam-api/reference/manage-access-to-properties-and-includes).
type: string
contractId:
description: Identifies the contract the property belongs to. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on how to omit the ID's `ctr_` prefix.
type: string
groupId:
description: Identifies the group to which the property is assigned. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on how to omit the ID's `grp_` prefix.
type: string
latestVersion:
description: Specifies the most recent version of the property.
type: integer
note:
description: Further descriptive commentary.
type: string
productId:
description: The product assigned to the property, required when POSTing a new property. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on how to omit the ID's `prd_` prefix.
type: string
productionVersion:
description: The most recent version to be activated to the production network, otherwise `null`.
nullable: true
type:
- integer
- 'null'
propertyId:
description: The property's unique identifier. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on how to omit the ID's `prp_` prefix. Don't use this value if you want to exchange data with the Identity and Access Manager API. See [Manage properties and includes](https://techdocs.akamai.com/iam-api/reference/manage-access-to-properties-and-includes).
type: string
propertyName:
description: A descriptive name for the property.
type: string
propertyType:
description: Specifies the type of the property. Either `TRADITIONAL` for properties where you pair property hostnames with the property version, or `HOSTNAME_BUCKET` where you manage property hostnames independently of the property version.
type: string
enum:
- HOSTNAME_BUCKET
- TRADITIONAL
ruleFormat:
description: Name of the rule format. The rule format can be frozen to a specific version, or represent the `latest` set of behaviors and criteria.
type: string
stagingVersion:
description: The most recent version to be activated to the test network, otherwise `null`.
nullable: true
type:
- integer
- 'null'
x-akamai:
file-path: schemas/property-get-response.yaml
headers:
X-Limit-Properties-Per-Contract-Limit:
description: Maximum number of activated property configurations per contract.
schema:
type: string
x-akamai:
file-path: headers/X-Limit-Properties-Per-Contract-Limit.yaml
X-Limit-Properties-Per-Contract-Remaining:
description: Remaining number of activated property configurations per contract. See [Rate and resource limiting](https://techdocs.akamai.com/property-mgr/reference/rate-and-resource-limiting) for details.
schema:
type: string
x-akamai:
file-path: headers/X-Limit-Properties-Per-Contract-Remaining.yaml
'400':
description: '[Bad request](https://techdocs.akamai.com/property-mgr/reference/400).'
content:
application/problem+json:
example:
detail: The system cannot understand your request. Please check the syntax and correct any problems.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 400
title: Bad Request
type: https://problems.luna.akamaiapis.net/papi/v0/http/bad-request
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/400.yaml
'401':
description: '[Unauthorized](https://techdocs.akamai.com/property-mgr/reference/401).'
content:
application/problem+json:
example:
detail: The request requires authentication.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 401
title: Unauthorized
type: https://problems.luna.akamaiapis.net/papi/v0/http/unauthorized
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/401.yaml
'403':
description: '[Forbidden](https://techdocs.akamai.com/property-mgr/reference/403).'
content:
application/problem+json:
example:
detail: The authorization token you provided does not allow access to this resource.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 403
title: Forbidden
type: https://problems.luna.akamaiapis.net/papi/v1/http/forbidden
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/403.yaml
'404':
description: '[Not found](https://techdocs.akamai.com/property-mgr/reference/404).'
content:
application/problem+json:
example:
detail: The system was unable to locate the requested resource.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 404
title: Not Found
type: https://problems.luna.akamaiapis.net/papi/v1/http/not-found
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/404.yaml
'405':
description: '[Method not allowed](https://techdocs.akamai.com/property-mgr/reference/405).'
content:
application/problem+json:
example:
detail: The system does not support the method you provided for this resource.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 405
title: Method not allowed
type: https://problems.luna.akamaiapis.net/papi/v1/http/method-not-allowed
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/405.yaml
'406':
description: '[Not acceptable](https://techdocs.akamai.com/property-mgr/reference/406).'
content:
application/problem+json:
example:
detail: The system does not support the content-type restrictions provided by your 'Accept' header.
instance: papi/v1/build#abc12345abcc02a7
status: 406
title: Not Acceptable
type: https://problems.luna.akamaiapis.net/papi/v1/http/not-acceptable
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/406.yaml
'429':
description: '[Too many requests](https://techdocs.akamai.com/property-mgr/reference/429).'
content:
application/problem+json:
example:
detail: Too many includes exist on contract ctr_1-12345. You must delete an include before continuing.
instance: /papi/v1/includes?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
instanceKey: 1-12345
limit: 500
limitKey: INCLUDES_PER_CONTRACT
remaining: 0
status: 429
title: Too many includes
type: https://problems.luna.akamaiapis.net/papi/v1/limit-exceeded
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
- limitKey
- instanceKey
- limit
- remaining
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
instanceKey:
description: Identifies the resource the limit is imposed on.
minLength: 1
type: string
limit:
description: The overall limit.
type: integer
limitKey:
description: The limit that got exceeded with the operation.
minLength: 1
type: string
remaining:
description: Number of items left to deploy.
type: integer
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-429.yaml
x-akamai:
file-path: errors/429.yaml
'500':
description: '[Internal server error](https://techdocs.akamai.com/property-mgr/reference/500).'
content:
application/problem+json:
example:
detail: Our system is experiencing errors. We''ll get this fixed as soon as possible.
instance: /papi/v1/properties/12345/activations#abc12345abcc02a7
status: 500
title: Internal Server Error
type: https://problems.luna.akamaiapis.net/papi/proxy/internal-server-error
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/500.yaml
parameters:
- description: Filters properties or includes that have been modified in a specified time. Accepts duration in the ISO 8601 format.
example: '{{modifiedSince}}'
in: query
name: modifiedSince
required: false
schema:
example: P1DT23H6M40S
type: string
x-akamai:
file-path: parameters/modifiedSince-query.yaml
- description: __Enum__ Filters and only shows properties or includes that have been modified within a specified period on a selected network, either `STAGING`, `PRODUCTION`, or `BOTH`. You need to specify it along with the `modifiedSince` query parameter.
example: '{{modifiedNetwork}}'
in: query
name: modifiedNetwork
required: false
schema:
example: PRODUCTION
type: string
enum:
- PRODUCTION
- STAGING
- BOTH
x-akamai:
file-path: parameters/modifiedNetwork-query.yaml
- description: Unique identifier for the contract. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on omitting the value's `ctr_` prefix.
example: '{{contractId}}'
in: query
name: contractId
required: true
schema:
example: ctr_1-1TJZFW
type: string
x-akamai:
file-path: parameters/contractId-required.yaml
- description: Unique identifier for the group. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on omitting the value's `grp_` prefix.
example: '{{groupId}}'
in: query
name: groupId
required: true
schema:
example: grp_15166
type: string
x-akamai:
file-path: parameters/groupId-required.yaml
- description: __Enum__ Sets whether to represent [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) in response data. Set to `false` when exchanging PAPI data with other APIs.
example: '{{PAPI-Use-Prefixes}}'
in: header
name: PAPI-Use-Prefixes
required: true
schema:
example: 'false'
type: string
enum:
- 'true'
- 'false'
x-akamai:
file-path: parameters/PAPI-Use-Prefixes-header.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
/properties/{propertyId}:
x-akamai:
file-path: paths/property.yaml
path-for-file: /properties/{propertyId}
x-akamai-descriptor-tools:
displayName: property
group: Properties
parameters:
- description: Unique identifier for the property. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on omitting the value's `prp_` prefix.
example: '{{propertyId}}'
in: path
name: propertyId
required: true
schema:
example: prp_12345
type: string
x-akamai:
file-path: parameters/propertyId-path.yaml
get:
description: This operation gets a specific property. You can call this operation by specifying any of the `propertyId` members from a [list of properties](https://techdocs.akamai.com/property-mgr/reference/get-properties), or by running a GET on the `propertyLink` response when [creating a new property](https://techdocs.akamai.com/property-mgr/reference/post-properties).
operationId: get-property
summary: Akamai Get a Property
tags:
- Properties
externalDocs:
description: See documentation for this operation in Akamai's Property Manager API
url: https://techdocs.akamai.com/property-mgr/reference/get-property
responses:
'200':
description: The response shows details for the requested property.
content:
application/json:
example:
properties:
items:
- accountId: act_A-CCT9012
assetId: aid_101
contractId: ctr_C-0N7RAC71
groupId: grp_15225
latestVersion: 2
note: Notes about example.com
productionVersion: null
propertyId: prp_175780
propertyName: example.com
stagingVersion: 1
schema:
$schema: http://json-schema.org/draft-04/schema#
additionalProperties: false
description: A common outer wrapping object structure. It provides additional contextual details for a set of requested data. The data itself is available under various inner members' `items` array, even individual items.
id: resource:/descriptors/papi/v1/schemas/GetPropertyResponse.json#
type: object
properties:
properties:
additionalProperties: false
description: The set of requested properties, available within an `items` array.
type: object
properties:
items:
description: Configuration data to apply to edge content. Relevant response objects appear within the outer envelope's `properties.items` array.
type: array
items:
additionalProperties: false
type: object
required:
- accountId
- contractId
- groupId
- propertyId
- propertyName
- latestVersion
- stagingVersion
- productionVersion
- assetId
- note
properties:
accountId:
description: Identifies the account the property belongs to. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on how to omit the ID's `act_` prefix.
readOnly: true
type: string
assetId:
description: An alternative identifier for the property. Use this value to key the property in the Identity and Access Management API. See [Manage properties and includes](https://techdocs.akamai.com/iam-api/reference/manage-access-to-properties-and-includes).
type: string
contractId:
description: Identifies the contract the property belongs to. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on how to omit the ID's `ctr_` prefix.
type: string
groupId:
description: Identifies the group to which the property is assigned. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on how to omit the ID's `grp_` prefix.
type: string
latestVersion:
description: Specifies the most recent version of the property.
type: integer
note:
description: Further descriptive commentary.
type: string
productId:
description: The product assigned to the property, required when POSTing a new property. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on how to omit the ID's `prd_` prefix.
type: string
productionVersion:
description: The most recent version to be activated to the production network, otherwise `null`.
nullable: true
type:
- integer
- 'null'
propertyId:
description: The property's unique identifier. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on how to omit the ID's `prp_` prefix. Don't use this value if you want to exchange data with the Identity and Access Manager API. See [Manage properties and includes](https://techdocs.akamai.com/iam-api/reference/manage-access-to-properties-and-includes).
type: string
propertyName:
description: A descriptive name for the property.
type: string
propertyType:
description: Specifies the type of the property. Either `TRADITIONAL` for properties where you pair property hostnames with the property version, or `HOSTNAME_BUCKET` where you manage property hostnames independently of the property version.
type: string
enum:
- HOSTNAME_BUCKET
- TRADITIONAL
ruleFormat:
description: Name of the rule format. The rule format can be frozen to a specific version, or represent the `latest` set of behaviors and criteria.
type: string
stagingVersion:
description: The most recent version to be activated to the test network, otherwise `null`.
nullable: true
type:
- integer
- 'null'
x-akamai:
file-path: schemas/property-get-response.yaml
'400':
description: '[Bad request](https://techdocs.akamai.com/property-mgr/reference/400).'
content:
application/problem+json:
example:
detail: The system cannot understand your request. Please check the syntax and correct any problems.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 400
title: Bad Request
type: https://problems.luna.akamaiapis.net/papi/v0/http/bad-request
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/400.yaml
'401':
description: '[Unauthorized](https://techdocs.akamai.com/property-mgr/reference/401).'
content:
application/problem+json:
example:
detail: The request requires authentication.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 401
title: Unauthorized
type: https://problems.luna.akamaiapis.net/papi/v0/http/unauthorized
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/401.yaml
'403':
description: '[Forbidden](https://techdocs.akamai.com/property-mgr/reference/403).'
content:
application/problem+json:
example:
detail: The authorization token you provided does not allow access to this resource.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 403
title: Forbidden
type: https://problems.luna.akamaiapis.net/papi/v1/http/forbidden
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/403.yaml
'404':
description: '[Not found](https://techdocs.akamai.com/property-mgr/reference/404).'
content:
application/problem+json:
example:
detail: The system was unable to locate the requested resource.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 404
title: Not Found
type: https://problems.luna.akamaiapis.net/papi/v1/http/not-found
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/404.yaml
'405':
description: '[Method not allowed](https://techdocs.akamai.com/property-mgr/reference/405).'
content:
application/problem+json:
example:
detail: The system does not support the method you provided for this resource.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 405
title: Method not allowed
type: https://problems.luna.akamaiapis.net/papi/v1/http/method-not-allowed
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/405.yaml
'406':
description: '[Not acceptable](https://techdocs.akamai.com/property-mgr/reference/406).'
content:
application/problem+json:
example:
detail: The system does not support the content-type restrictions provided by your 'Accept' header.
instance: papi/v1/build#abc12345abcc02a7
status: 406
title: Not Acceptable
type: https://problems.luna.akamaiapis.net/papi/v1/http/not-acceptable
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/406.yaml
'429':
description: '[Too many requests](https://techdocs.akamai.com/property-mgr/reference/429).'
content:
application/problem+json:
example:
detail: Too many includes exist on contract ctr_1-12345. You must delete an include before continuing.
instance: /papi/v1/includes?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
instanceKey: 1-12345
limit: 500
limitKey: INCLUDES_PER_CONTRACT
remaining: 0
status: 429
title: Too many includes
type: https://problems.luna.akamaiapis.net/papi/v1/limit-exceeded
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
- limitKey
- instanceKey
- limit
- remaining
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
instanceKey:
description: Identifies the resource the limit is imposed on.
minLength: 1
type: string
limit:
description: The overall limit.
type: integer
limitKey:
description: The limit that got exceeded with the operation.
minLength: 1
type: string
remaining:
description: Number of items left to deploy.
type: integer
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-429.yaml
x-akamai:
file-path: errors/429.yaml
'500':
description: '[Internal server error](https://techdocs.akamai.com/property-mgr/reference/500).'
content:
application/problem+json:
example:
detail: Our system is experiencing errors. We''ll get this fixed as soon as possible.
instance: /papi/v1/properties/12345/activations#abc12345abcc02a7
status: 500
title: Internal Server Error
type: https://problems.luna.akamaiapis.net/papi/proxy/internal-server-error
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/500.yaml
parameters:
- description: __Enum__ Sets whether to represent [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) in response data. Set to `false` when exchanging PAPI data with other APIs.
example: '{{PAPI-Use-Prefixes}}'
in: header
name: PAPI-Use-Prefixes
required: true
schema:
example: 'false'
type: string
enum:
- 'true'
- 'false'
x-akamai:
file-path: parameters/PAPI-Use-Prefixes-header.yaml
- description: Unique identifier for the contract. The parameter is optional if a property belongs to only one contract. Otherwise you need to specify it along with the `groupId`. In other operations that don't specify a `propertyId` URL parameter, this parameter is always required. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on omitting the value's `ctr_` prefix.
example: '{{contractId}}'
in: query
name: contractId
required: false
schema:
example: ctr_1-1TJZFW
type: string
x-akamai:
file-path: parameters/contractId-optional.yaml
- description: Unique identifier for the group. The parameter is optional if a property belongs to only one group. Otherwise you need to specify it along with the `contractId`. In other operations that don't specify a `propertyId` URL parameter, this parameter is always required. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on omitting the value's `grp_` prefix.
example: '{{groupId}}'
in: query
name: groupId
required: false
schema:
example: grp_15166
type: string
x-akamai:
file-path: parameters/groupId-optional.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
delete:
description: Removes a specific property, which you can only do if none of its versions are currently active. Activating another property with the same set of hostnames automatically triggers a deactivation on the targeted property. See [Create a new activation](https://techdocs.akamai.com/property-mgr/reference/post-property-activations) for details. A successful DELETE results in a 200 response with the confirmation message. Attempting to delete an active property results in a 500 error. Attempting to delete an unknown property results in a 404 error.
operationId: delete-property
summary: Akamai Remove a Property
tags:
- Properties
externalDocs:
description: See documentation for this operation in Akamai's Property Manager API
url: https://techdocs.akamai.com/property-mgr/reference/delete-property
responses:
'200':
description: Shows a message confirming the property deletion.
content:
application/json:
example:
message: Deletion Successful.
schema:
$schema: http://json-schema.org/draft-04-schema#
additionalProperties: false
description: Specifies the result of the property deletion.
id: resource:/descriptors/papi/v1/schemas/DeletePropertyResponse.json#
type: object
required:
- message
properties:
message:
description: Confirms whether the property was successfully deleted.
type: string
x-akamai:
file-path: schemas/property-delete-response.yaml
'400':
description: '[Bad request](https://techdocs.akamai.com/property-mgr/reference/400).'
content:
application/problem+json:
example:
detail: The system cannot understand your request. Please check the syntax and correct any problems.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 400
title: Bad Request
type: https://problems.luna.akamaiapis.net/papi/v0/http/bad-request
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/400.yaml
'401':
description: '[Unauthorized](https://techdocs.akamai.com/property-mgr/reference/401).'
content:
application/problem+json:
example:
detail: The request requires authentication.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 401
title: Unauthorized
type: https://problems.luna.akamaiapis.net/papi/v0/http/unauthorized
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/401.yaml
'403':
description: '[Forbidden](https://techdocs.akamai.com/property-mgr/reference/403).'
content:
application/problem+json:
example:
detail: The authorization token you provided does not allow access to this resource.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 403
title: Forbidden
type: https://problems.luna.akamaiapis.net/papi/v1/http/forbidden
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/403.yaml
'404':
description: '[Not found](https://techdocs.akamai.com/property-mgr/reference/404).'
content:
application/problem+json:
example:
detail: The system was unable to locate the requested resource.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 404
title: Not Found
type: https://problems.luna.akamaiapis.net/papi/v1/http/not-found
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/404.yaml
'405':
description: '[Method not allowed](https://techdocs.akamai.com/property-mgr/reference/405).'
content:
application/problem+json:
example:
detail: The system does not support the method you provided for this resource.
instance: /papi/v1/properties?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
status: 405
title: Method not allowed
type: https://problems.luna.akamaiapis.net/papi/v1/http/method-not-allowed
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/405.yaml
'406':
description: '[Not acceptable](https://techdocs.akamai.com/property-mgr/reference/406).'
content:
application/problem+json:
example:
detail: The system does not support the content-type restrictions provided by your 'Accept' header.
instance: papi/v1/build#abc12345abcc02a7
status: 406
title: Not Acceptable
type: https://problems.luna.akamaiapis.net/papi/v1/http/not-acceptable
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/406.yaml
'429':
description: '[Too many requests](https://techdocs.akamai.com/property-mgr/reference/429).'
content:
application/problem+json:
example:
detail: Too many includes exist on contract ctr_1-12345. You must delete an include before continuing.
instance: /papi/v1/includes?contractId=ctr_C-0N7RAC7&groupId=grp_12345#abc12345abcc02a7
instanceKey: 1-12345
limit: 500
limitKey: INCLUDES_PER_CONTRACT
remaining: 0
status: 429
title: Too many includes
type: https://problems.luna.akamaiapis.net/papi/v1/limit-exceeded
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
- limitKey
- instanceKey
- limit
- remaining
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
instanceKey:
description: Identifies the resource the limit is imposed on.
minLength: 1
type: string
limit:
description: The overall limit.
type: integer
limitKey:
description: The limit that got exceeded with the operation.
minLength: 1
type: string
remaining:
description: Number of items left to deploy.
type: integer
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-429.yaml
x-akamai:
file-path: errors/429.yaml
'500':
description: '[Internal server error](https://techdocs.akamai.com/property-mgr/reference/500).'
content:
application/problem+json:
example:
detail: Our system is experiencing errors. We''ll get this fixed as soon as possible.
instance: /papi/v1/properties/12345/activations#abc12345abcc02a7
status: 500
title: Internal Server Error
type: https://problems.luna.akamaiapis.net/papi/proxy/internal-server-error
schema:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- status
- detail
- instance
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
errors:
description: For errors with more than one detected problem, this represents each as a nested Problem Details object.
minItems: 0
type: array
uniqueItems: true
items:
additionalProperties: false
description: Represents error data in the [RFC 7807](https://www.rfc-editor.org/rfc/rfc7807) Problem Details format.
type: object
required:
- type
- title
- detail
properties:
detail:
description: Diagnostic instructions to locate and fix the problem.
minLength: 1
type: string
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem-nested.yaml
instance:
description: Unique value generated with each API call.
minLength: 1
type: string
status:
description: The HTTP status code that categorizes this error case.
maximum: 600
minimum: 100
type: integer
title:
description: A summary of each error case.
minLength: 1
type: string
type:
description: Identifies each error case.
format: uri
type: string
x-akamai:
file-path: schemas/problem.yaml
x-akamai:
file-path: errors/500.yaml
parameters:
- description: Unique identifier for the contract. The parameter is optional if a property belongs to only one contract. Otherwise you need to specify it along with the `groupId`. In other operations that don't specify a `propertyId` URL parameter, this parameter is always required. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on omitting the value's `ctr_` prefix.
example: '{{contractId}}'
in: query
name: contractId
required: false
schema:
example: ctr_1-1TJZFW
type: string
x-akamai:
file-path: parameters/contractId-optional.yaml
- description: Unique identifier for the group. The parameter is optional if a property belongs to only one group. Otherwise you need to specify it along with the `contractId`. In other operations that don't specify a `propertyId` URL parameter, this parameter is always required. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) for details on omitting the value's `grp_` prefix.
example: '{{groupId}}'
in: query
name: groupId
required: false
schema:
example: grp_15166
type: string
x-akamai:
file-path: parameters/groupId-optional.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}/properties:
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: You can add a property to a sandbox. Use this if you need to support more than one `hostname` in your sandbox environment.
operationId: post-sandbox-properties
summary: Add a property to a sandbox
tags:
- Properties
externalDocs:
description: See documentation for this operation in Akamai's Sandbox API
url: https://techdocs.akamai.com/sandbox/reference/post-sandbox-properties
requestBody:
required: true
content:
application/json:
example:
propertyId: '470031'
ruleFormat: latest
requestHostnames:
- portal.example.com
schema:
additionalProperties: false
description: Create a JSON request body for the sandbox property including data member as described in the table below.
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`.
example: '{{contractId}}'
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.
example: '{{cpcode}}'
type: number
edgeHostname:
description: The edge hostname for the property as configured in Property Manager. May be specified instead of `propertyId`, `hostname`, or `propertyName`.
example: '{{edgeHostname}}'
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`.
example: '{{groupId}}'
type: string
hostname:
description: The hostname for the property as configured in Property Manager. May be specified instead of `propertyId`, `edgeHostname`, or `propertyName`.
example: '{{hostname}}'
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`.
example: '{{propertyId}}'
type: string
propertyName:
description: The name of the property as it appears in Property Manager. May be specified instead of `propertyId`, `edgeHostname`, or `hostname`.
example: '{{propertyName}}'
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.
example: '{{propertyVersion}}'
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).
example: '{{ruleFormat}}'
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/property-create-request.yaml
responses:
'201':
description: The resource was created.
content:
application/json:
example:
cpcode: 1234567
productId: prd_Fresca
propertyId: 470031
ruleFormat: latest
sandboxPropertyId: e4ae2447-7430-11e8-8f80-0242ac110007
validationStatus: SUCCESS
additionalRequestHostnamesInProperty:
- portal.example.com
editedRuleBehaviors:
- cpCode
filteredRuleBehaviors:
- http2
requestHostnames:
- shop.example.com
_links:
rules:
href: /sandbox-api/v1/sandboxes/e43a53d6-7430-11e8-8f80-0242ac110007/properties/e4ae2447-7430-11e8-8f80-0242ac110007/rules
sandbox:
href: /sandbox-api/v1/sandboxes/e43a53d6-7430-11e8-8f80-0242ac110007
self:
href: /sandbox-api/v1/sandboxes/e43a53d6-7430-11e8-8f80-0242ac110007/properties/e4ae2447-7430-11e8-8f80-0242ac110007
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: Each sandbox contains at least one property. The property configuration describes the origin location and content-handling specifications.
type: object
required:
- requestHostnames
properties:
_links:
additionalProperties: true
description: HAL-formatted hypermedia links relating to the property. 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 found in the [property configuration](https://techdocs.akamai.com/property-mgr/docs/key-concepts-terms) that were not specified in the [Create a sandbox](https://techdocs.akamai.com/sandbox/reference/post-sandbox) request.
minItems: 1
type: array
items:
type: string
cpcode:
description: Unique identifier used for reporting traffic served. The Sandbox API tries to use the same CP code for all traffic within a particular Control Center access group.
type: number
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
productId:
description: The Akamai product associated with the property, as defined in Property Manager.
type: string
propertyId:
description: The identifier for the property from which the sandbox was created.
type: string
requestHostnames:
description: Customer-specific hostnames included in the property configuration that you can use to make requests and test changes in the sandbox. The Sandbox API defaults to the hostnames configured in the property unless you specify alternates.
minItems: 1
type: array
items:
type: string
ruleFormat:
description: The Property Manager rule format used within the property.
type: string
sandboxPropertyId:
description: Unique identifier for a property within the sandbox.
type: string
validationStatus:
description: The validation status for the property. If the status is `OK` the sandbox can serve traffic. If the status is `ERROR` you can find the `statusReason` in the sandbox response object.
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
x-akamai:
file-path: schemas/property.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
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 sandbox properties available to the current user.
operationId: get-sandbox-properties
summary: List properties
tags:
- Properties
externalDocs:
description: See documentation for this operation in Akamai's Sandbox API
url: https://techdocs.akamai.com/sandbox/reference/get-sandbox-properties
responses:
'200':
description: Successful operation.
content:
application/json:
example:
properties:
- cpcode: 1234567
productId: prd_Fresca
propertyId: prp_1712
ruleFormat: latest
sandboxPropertyId: ad37282c-8549-11e8-898a-0242ac110002
validationStatus: SUCCESS
additionalRequestHostnamesInProperty:
- portal.example.com
editedRuleBehaviors:
- cpCode
filteredRuleBehaviors:
- http2
requestHostnames:
- shop.example.com
_links:
rules:
href: /sandbox-api/v1/sandboxes/ac6ef62b-8549-11e8-898a-0242ac110002/properties/ad37282c-8549-11e8-898a-0242ac110002/rules
sandbox:
href: /sandbox-api/v1/sandboxes/ac6ef62b-8549-11e8-898a-0242ac110002
self:
href: /sandbox-api/v1/sandboxes/ac6ef62b-8549-11e8-898a-0242ac110002/properties/ad37282c-8549-11e8-898a-0242ac110002
schema:
additionalProperties: false
type: object
required:
- properties
properties:
properties:
description: The set of properties in this sandbox.
minItems: 1
type: array
items:
additionalProperties: false
description: Detailed information on the property.
type: object
required:
- requestHostnames
properties:
_links:
additionalProperties: true
description: HAL-formatted hypermedia links relating to the property. 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 found in the [property configuration](https://techdocs.akamai.com/property-mgr/docs/key-concepts-terms) that were not specified in the [Create a sandbox](https://techdocs.akamai.com/sandbox/reference/post-sandbox) request.
minItems: 1
type: array
items:
type: string
cpcode:
description: Unique identifier used for reporting traffic served. The Sandbox API tries to use the same CP code for all traffic within a particular Control Center access group.
type: number
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
productId:
description: The Akamai product associated with the property, as defined in Property Manager.
type: string
propertyId:
description: The identifier for the property from which the sandbox was created.
type: string
requestHostnames:
description: Customer-specific hostnames included in the property configuration that you can use to make requests and test changes in the sandbox. The Sandbox API defaults to the hostnames configured in the property unless you specify alternates.
minItems: 1
type: array
items:
type: string
ruleFormat:
description: The Property Manager rule format used within the property.
type: string
sandboxPropertyId:
description: Unique identifier for a property within the sandbox.
type: string
validationStatus:
description: The validation status for the property. If the status is `OK` the sandbox can serve traffic. If the status is `ERROR` you can find the `statusReason` in the sandbox response object.
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
x-akamai:
file-path: schemas/property.yaml
x-akamai:
file-path: schemas/properties.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}/properties/{sandboxPropertyId}:
parameters:
- description: Unique identifier for the property within a sandbox.
example: '{{sandboxPropertyId}}'
in: path
name: sandboxPropertyId
required: true
schema:
example: e4ae2447-7430-11e8-8f80-0242ac110007
type: string
x-akamai:
file-path: parameters/sandboxPropertyId-path.yaml
- 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 property of a sandbox so you can review the information in the response body.
operationId: get-sandbox-property
summary: Read a property
tags:
- Properties
externalDocs:
description: See documentation for this operation in Akamai's Sandbox API
url: https://techdocs.akamai.com/sandbox/reference/get-sandbox-property
responses:
'200':
description: Successful operation.
content:
application/json:
example:
cpcode: 1234567
productId: prd_Fresca
propertyId: prp_1712
ruleFormat: latest
sandboxPropertyId: ad37282c-8549-11e8-898a-0242ac110002
validationStatus: SUCCESS
additionalRequestHostnamesInProperty:
- portal.example.com
editedRuleBehaviors:
- cpCode
filteredRuleBehaviors:
- http2
requestHostnames:
- shop.example.com
_links:
rules:
href: /sandbox-api/v1/sandboxes/ac6ef62b-8549-11e8-898a-0242ac110002/properties/ad37282c-8549-11e8-898a-0242ac110002/rules
sandbox:
href: /sandbox-api/v1/sandboxes/ac6ef62b-8549-11e8-898a-0242ac110002
self:
href: /sandbox-api/v1/sandboxes/ac6ef62b-8549-11e8-898a-0242ac110002/properties/ad37282c-8549-11e8-898a-0242ac110002
schema:
additionalProperties: false
description: Each sandbox contains at least one property. The property configuration describes the origin location and content-handling specifications.
type: object
required:
- requestHostnames
properties:
_links:
additionalProperties: true
description: HAL-formatted hypermedia links relating to the property. 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 found in the [property configuration](https://techdocs.akamai.com/property-mgr/docs/key-concepts-terms) that were not specified in the [Create a sandbox](https://techdocs.akamai.com/sandbox/reference/post-sandbox) request.
minItems: 1
type: array
items:
type: string
cpcode:
description: Unique identifier used for reporting traffic served. The Sandbox API tries to use the same CP code for all traffic within a particular Control Center access group.
type: number
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
productId:
description: The Akamai product associated with the property, as defined in Property Manager.
type: string
propertyId:
description: The identifier for the property from which the sandbox was created.
type: string
requestHostnames:
description: Customer-specific hostnames included in the property configuration that you can use to make requests and test changes in the sandbox. The Sandbox API defaults to the hostnames configured in the property unless you specify alternates.
minItems: 1
type: array
items:
type: string
ruleFormat:
description: The Property Manager rule format used within the property.
type: string
sandboxPropertyId:
description: Unique identifier for a property within the sandbox.
type: string
validationStatus:
description: The validation status for the property. If the status is `OK` the sandbox can serve traffic. If the status is `ERROR` you can find the `statusReason` in the sandbox response object.
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
x-akamai:
file-path: schemas/property.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: Update the `requestHostnames` of the sandbox property. Your sandbox can support multiple hostnames for testing purposes.
operationId: put-sandbox-property
summary: Update a property
tags:
- Properties
externalDocs:
description: See documentation for this operation in Akamai's Sandbox API
url: https://techdocs.akamai.com/sandbox/reference/put-sandbox-property
requestBody:
required: true
content:
application/json:
example:
cpcode: 1234567
requestHostnames:
- host1.example.com
- host2.example.com
schema:
additionalProperties: false
description: Each sandbox contains at least one property. The property configuration describes the origin location and content-handling specifications.
type: object
required:
- requestHostnames
properties:
_links:
additionalProperties: true
description: HAL-formatted hypermedia links relating to the property. 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 found in the [property configuration](https://techdocs.akamai.com/property-mgr/docs/key-concepts-terms) that were not specified in the [Create a sandbox](https://techdocs.akamai.com/sandbox/reference/post-sandbox) request.
minItems: 1
type: array
items:
type: string
cpcode:
description: Unique identifier used for reporting traffic served. The Sandbox API tries to use the same CP code for all traffic within a particular Control Center access group.
example: '{{cpcode}}'
type: number
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
productId:
description: The Akamai product associated with the property, as defined in Property Manager.
example: '{{productId}}'
type: string
propertyId:
description: The identifier for the property from which the sandbox was created.
example: '{{propertyId}}'
type: string
requestHostnames:
description: Customer-specific hostnames included in the property configuration that you can use to make requests and test changes in the sandbox. The Sandbox API defaults to the hostnames configured in the property unless you specify alternates.
minItems: 1
type: array
items:
type: string
ruleFormat:
description: The Property Manager rule format used within the property.
example: '{{ruleFormat}}'
type: string
sandboxPropertyId:
description: Unique identifier for a property within the sandbox.
example: '{{sandboxPropertyId}}'
type: string
validationStatus:
description: The validation status for the property. If the status is `OK` the sandbox can serve traffic. If the status is `ERROR` you can find the `statusReason` in the sandbox response object.
example: '{{validationStatus}}'
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
x-akamai:
file-path: schemas/property.yaml
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
delete:
description: Remove a property from a sandbox. This operation applies when the sandbox contains more than one property. You cannot delete the only property of a sandbox.
operationId: delete-sandbox-property
summary: Delete a property
tags:
- Properties
externalDocs:
description: See documentation for this operation in Akamai's Sandbox API
url: https://techdocs.akamai.com/sandbox/reference/delete-sandbox-property
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}/properties/{sandboxPropertyId}/rules:
parameters:
- description: Unique identifier for the property within a sandbox.
example: '{{sandboxPropertyId}}'
in: path
name: sandboxPropertyId
required: true
schema:
example: e4ae2447-7430-11e8-8f80-0242ac110007
type: string
x-akamai:
file-path: parameters/sandboxPropertyId-path.yaml
- 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 rule tree of a sandbox property. Each sandbox property references one rule tree. For more information on how content-handling rules are defined, review the [Property Manager API](https://techdocs.akamai.com/property-mgr/reference/api).
operationId: get-sandbox-properties-rules
summary: Get a rule tree
tags:
- Properties
externalDocs:
description: See documentation for this operation in Akamai's Sandbox API
url: https://techdocs.akamai.com/sandbox/reference/get-sandbox-properties-rules
responses:
'200':
description: Successful operation.
content:
application/json:
example:
_links:
property:
href: /sandbox-api/v1/sandboxes/ac6ef62b-8549-11e8-898a-0242ac110002/properties/ad37282c-8549-11e8-898a-0242ac110002
sandbox:
href: /sandbox-api/v1/sandboxes/ac6ef62b-8549-11e8-898a-0242ac110002
self:
href: /sandbox-api/v1/sandboxes/ac6ef62b-8549-11e8-898a-0242ac110002/properties/ad37282c-8549-11e8-898a-0242ac110002/rules
rules:
name: default
children:
- criteriaMustSatisfy: all
name: Handle /my-path
behaviors:
- behavior: max-age
name: caching
ttl: 1m
criteria:
- name: path
value:
- /my-path
schema:
additionalProperties: false
description: Each sandbox property references one rule tree.
type: object
required:
- rules
properties:
_links:
additionalProperties: true
description: HAL-formatted hypermedia links relating to the rule tree. 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
rules:
description: Specifies the rule tree for this sandbox property. 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/rules.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: Modify the rules of a sandbox property to make changes to content-handling behaviors for testing purposes within your development environment. Once you are satisfied with the results in your sandbox, you can use the [Property Manager API](https://techdocs.akamai.com/property-mgr/reference/api) to apply the rule changes to your property configuration.
operationId: put-sandbox-properties-rules
summary: Update a rule tree
tags:
- Properties
externalDocs:
description: See documentation for this operation in Akamai's Sandbox API
url: https://techdocs.akamai.com/sandbox/reference/put-sandbox-properties-rules
requestBody:
required: true
content:
application/json:
example:
rules:
name: default
children:
- criteriaMustSatisfy: all
name: Handle /my-path
behaviors:
- behavior: max-age
name: caching
ttl: 5m
criteria:
- name: path
value:
- /my-path
schema:
additionalProperties: false
description: Each sandbox property references one rule tree.
type: object
required:
- rules
properties:
_links:
additionalProperties: true
description: HAL-formatted hypermedia links relating to the rule tree. 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
rules:
description: Specifies the rule tree for this sandbox property. 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/rules.yaml
responses:
'200':
description: Successful operation.
content:
application/json:
example:
ruleFormat: latest
editedRuleBehaviors:
- cpCode
filteredRuleBehaviors:
- http2
_links:
property:
href: /sandbox-api/v1/sandboxes/e43a53d6-7430-11e8-8f80-0242ac110007/properties/e4ae2447-7430-11e8-8f80-0242ac110007
sandbox:
href: /sandbox-api/v1/sandboxes/e43a53d6-7430-11e8-8f80-0242ac110007
self:
href: /sandbox-api/v1/sandboxes/e43a53d6-7430-11e8-8f80-0242ac110007/properties/e4ae2447-7430-11e8-8f80-0242ac110007/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: Response from updating a properties rules. It includes information related to the validation, and any modifications for the sandbox environment. The response does not include the rules themselves to reduce size of the response.
type: object
properties:
_links:
additionalProperties: true
description: HAL-formatted hypermedia links relating to the property. 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
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
ruleFormat:
description: The Property Manager rule format used for validation.
type: string
validationWarnings:
description: Contains warnings related to validating the rule tree.
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
x-akamai:
file-path: schemas/update-rules-response.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
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