Akamai API Security Available hostnames API
List all hostnames for a given contract and group.
List all hostnames for a given contract and group.
openapi: 3.0.0
info:
description: 'Manage your configurations for Kona Site Defender,
Web Application Protector, and Client Reputation.
'
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
title: 'Akamai: Application Security Activation history Available hostnames API'
version: v1
servers:
- url: https://{hostname}/appsec/v1
tags:
- description: List all hostnames for a given contract and group.
name: Available hostnames
paths:
/contracts/{contractId}/groups/{groupId}/selectable-hostnames:
parameters:
- description: A unique identifier for a group.
example: '{{groupId}}'
in: path
name: groupId
required: true
schema:
example: '54321'
type: string
x-akamai:
file-path: parameters/group-id-path.yaml
- description: A unique identifier for a contract.
example: '{{contractId}}'
in: path
name: contractId
required: true
schema:
example: K-0N7RAK7
type: string
x-akamai:
file-path: parameters/contract-id-path.yaml
x-akamai:
file-path: paths/contracts-groups-selectable-hostnames.yaml
path-info: /contracts/{contractId}/groups/{groupId}/selectable-hostnames
get:
description: Lists the hostnames for a given contract and group. Use this operation for a new configuration, and use [List selectable hostnames](https://techdocs.akamai.com/application-security/reference/get-selectable-hostnames) to see a list of hostnames you can add to an existing configuration. This operation shows you every acceptable hostname you can use, where the other hostname operation omits any hostnames already included in your configuration. _Products:_ All.
externalDocs:
description: See documentation for this operation in Akamai's Application Security API
url: https://techdocs.akamai.com/application-security/reference/get-selectable-hostnames-per-config
operationId: get-selectable-hostnames-per-config
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
responses:
'200':
content:
application/json:
example:
availableSet:
- activeInProduction: true
activeInStaging: true
arlInclusion: true
configIdInProduction: 77653
configNameInProduction: WAF Security File
hostname: example.com
- activeInProduction: false
activeInStaging: true
arlInclusion: true
configIdInProduction: 51074
configNameInProduction: A PUBLIC CONFIG
hostname: www.example.com
- activeInProduction: true
activeInStaging: true
arlInclusion: true
configIdInProduction: 65473
configNameInProduction: Other Security Configuration
hostname: www.example-123.com
configId: 123
configVersion: 2
errorSet:
- hostname: '*.example.net'
reason: property is not active in either production or staging
reasonCode: 400
- hostname: test-example.net
reason: You don't have access to this property
reasonCode: 403
protectARLInclusionHost: true
selectedSet:
- activeInProduction: true
activeInStaging: true
arlInclusion: false
configIdInProduction: 11887
configNameInProduction: Rbac Test Config
hostname: m.example.com
- activeInProduction: true
activeInStaging: true
arlInclusion: false
configIdInProduction: null
configNameInProduction: null
hostname: m.example-123.com
schema:
additionalProperties: false
description: Contains the list of hostnames available for protection and its details.
properties:
availableSet:
description: The available hosts set for the current user.
items:
additionalProperties: false
description: Contains details about the hostname and its status.
properties:
activeInProduction:
description: Whether the hostname is active in the production network.
type: boolean
activeInStaging:
description: Whether the hostname is active in the staging network.
type: boolean
arlInclusion:
description: Whether the hostname is Akamai Resource Locator (ARL) included.
type: boolean
configIdInProduction:
description: Uniquely identifies the configuration that protects the hostname.
nullable: true
type: integer
configNameInProduction:
description: The name of the configuration that protects the hostname.
nullable: true
type: string
hostname:
description: The hostname.
type: string
required:
- hostname
type: object
x-akamai:
file-path: schemas/hostname-object.yaml
type: array
configId:
description: Uniquely identifies the security configuration.
type: integer
configVersion:
description: The security configuration version.
type: integer
errorSet:
description: The requested hosts aren't available in this configuration version.
items:
additionalProperties: false
properties:
hostname:
description: The hostname that triggers an error.
type: string
reason:
description: The reason why the hosts aren't protectable in this configuration version.
type: string
reasonCode:
description: The error status code for the hostname.
type: integer
required:
- reason
- reasonCode
- hostname
type: object
type: array
protectARLInclusionHost:
description: Whether the host defined in the ARL file has legacy WAF enabled in the configuration.
type: boolean
selectedSet:
description: The selected set of hostnames in this configuration version.
items:
additionalProperties: false
description: Contains details about the hostname and its status.
properties:
activeInProduction:
description: Whether the hostname is active in the production network.
type: boolean
activeInStaging:
description: Whether the hostname is active in the staging network.
type: boolean
arlInclusion:
description: Whether the hostname is Akamai Resource Locator (ARL) included.
type: boolean
configIdInProduction:
description: Uniquely identifies the configuration that protects the hostname.
nullable: true
type: integer
configNameInProduction:
description: The name of the configuration that protects the hostname.
nullable: true
type: string
hostname:
description: The hostname.
type: string
required:
- hostname
type: object
x-akamai:
file-path: schemas/hostname-object.yaml
type: array
required:
- configId
- configVersion
- protectARLInclusionHost
type: object
x-akamai:
file-path: schemas/host-info-in-config.yaml
description: Successful response.
'400':
content:
application/problem+json:
example:
detail: The request could not be understood by the server due to malformed syntax.
instance: https://problems.luna.akamaiapis.net/appsec/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749
status: 400
title: Bad Request
type: https://problems.luna.akamaiapis.net/appsec/error-types/BAD-REQUEST
schema:
additionalProperties: true
description: Details the errors you can receive.
properties:
detail:
description: The detailed error message.
type: string
fieldErrors:
additionalProperties:
description: Fields that provide additional details about the problem.
type: string
description: Pointers to fields for which invalid input was provided, whose values are messages detailing the reason this input was invalid for this field.
type: object
instance:
description: The non-referenceable URI that indicates the error instance.
example: https://problems.luna.akamaiapis.net/api-definitions/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749
type: string
status:
description: The HTTP status code.
example: 404
type: integer
title:
description: The error title.
example: Not Found
type: string
type:
description: The URL for the error type.
example: https://problems.luna.akamaiapis.net/api-definitions/error-types/NOT-FOUND
type: string
required:
- title
- type
- detail
- instance
- status
type: object
x-akamai:
file-path: schemas/problem-details.yaml
description: '[Bad request](https://techdocs.akamai.com/application-security/reference/400). Invalid request body or URL parameter input.'
x-akamai:
file-path: errors/400.yaml
'403':
content:
application/problem+json:
example:
detail: You do not have the necessary access to perform this operation or the requested resource cannot be modified
instance: https://problems.luna.akamaiapis.net/appsec/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749
status: 403
title: Forbidden
type: https://problems.luna.akamaiapis.net/appsec-resource/error-types/ACCESS-DENIED
schema:
additionalProperties: true
description: Details the errors you can receive.
properties:
detail:
description: The detailed error message.
type: string
fieldErrors:
additionalProperties:
description: Fields that provide additional details about the problem.
type: string
description: Pointers to fields for which invalid input was provided, whose values are messages detailing the reason this input was invalid for this field.
type: object
instance:
description: The non-referenceable URI that indicates the error instance.
example: https://problems.luna.akamaiapis.net/api-definitions/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749
type: string
status:
description: The HTTP status code.
example: 404
type: integer
title:
description: The error title.
example: Not Found
type: string
type:
description: The URL for the error type.
example: https://problems.luna.akamaiapis.net/api-definitions/error-types/NOT-FOUND
type: string
required:
- title
- type
- detail
- instance
- status
type: object
x-akamai:
file-path: schemas/problem-details.yaml
description: '[Forbidden](https://techdocs.akamai.com/application-security/reference/403). You don''t have access to the resource.'
x-akamai:
file-path: errors/403.yaml
'404':
content:
application/problem+json:
example:
detail: The requested resource is not found
instance: https://problems.luna.akamaiapis.net/appsec/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749
status: 404
title: Not Found
type: https://problems.luna.akamaiapis.net/appsec/error-types/NOT-FOUND
schema:
additionalProperties: true
description: Details the errors you can receive.
properties:
detail:
description: The detailed error message.
type: string
fieldErrors:
additionalProperties:
description: Fields that provide additional details about the problem.
type: string
description: Pointers to fields for which invalid input was provided, whose values are messages detailing the reason this input was invalid for this field.
type: object
instance:
description: The non-referenceable URI that indicates the error instance.
example: https://problems.luna.akamaiapis.net/api-definitions/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749
type: string
status:
description: The HTTP status code.
example: 404
type: integer
title:
description: The error title.
example: Not Found
type: string
type:
description: The URL for the error type.
example: https://problems.luna.akamaiapis.net/api-definitions/error-types/NOT-FOUND
type: string
required:
- title
- type
- detail
- instance
- status
type: object
x-akamai:
file-path: schemas/problem-details.yaml
description: '[Not found](https://techdocs.akamai.com/application-security/reference/404). That resource doesn''t exist, or the URL is malformed.'
x-akamai:
file-path: errors/404.yaml
summary: Akamai API Security List Available Hostnames for a New Configuration
tags:
- Available hostnames
externalDocs:
description: See documentation for Akamai's Application Security API
url: https://techdocs.akamai.com/application-security/reference
x-readme:
samples-languages:
- curl
- python
- node