naftiko: 1.0.0-alpha2 info: label: 'Akamai: Property Manager API — Includes' description: 'Akamai: Property Manager API — Includes. 6 operations. Lead operation: Akamai Create or Clone an Include. Self-contained Naftiko capability covering one Akamai business surface.' tags: - Akamai - Includes created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: AKAMAI_API_KEY: AKAMAI_API_KEY capability: consumes: - type: http namespace: papi-includes baseUri: https://{hostname}/papi/v1 description: 'Akamai: Property Manager API — Includes business capability. Self-contained, no shared references.' resources: - name: includes path: /includes operations: - name: postincludes method: POST description: Akamai Create or Clone an Include outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: PAPI-Use-Prefixes in: header type: string description: __Enum__ Sets whether to represent [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) in response data. Set to `false` when exchangin required: true - name: contractId in: query type: string 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_` required: true - name: groupId in: query type: string 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_` pr required: true - name: accountSwitchKey in: query type: string 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-w - name: body in: body type: object description: Request body (JSON). required: true - name: getincludes method: GET description: Akamai List Includes outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: modifiedSince in: query type: string description: Filters properties or includes that have been modified in a specified time. Accepts duration in the ISO 8601 format. - name: modifiedNetwork in: query type: string description: '__Enum__ Filters and only shows properties or includes that have been modified within a specified period on a selected network, either `STAGING`, `PRODUCTION`, ' - name: contractId in: query type: string 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_` required: true - name: groupId in: query type: string 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_` pr required: true - name: PAPI-Use-Prefixes in: header type: string description: __Enum__ Sets whether to represent [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) in response data. Set to `false` when exchangin required: true - name: accountSwitchKey in: query type: string 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-w - name: includes-validation-results-activationId-properties-propertyId-versions-property path: /includes/validation-results/{activationId}/properties/{propertyId}/versions/{propertyVersion} operations: - name: getincludevalidation method: GET description: Akamai Validate an Include outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: offset in: query type: integer description: For paginated responses, specifies the page of results you want to navigate to, starting from `0`. - name: limit in: query type: integer description: For paginated responses, specifies the number of `hostnames` objects to include on each page. - name: contractId in: query type: string 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 `group - name: groupId in: query type: string 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` - name: PAPI-Use-Prefixes in: header type: string description: __Enum__ Sets whether to represent [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) in response data. Set to `false` when exchangin required: true - name: accountSwitchKey in: query type: string 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-w - name: includes-includeId path: /includes/{includeId} operations: - name: getinclude method: GET description: Akamai Get an Include outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contractId in: query type: string 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 `group - name: groupId in: query type: string 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` - name: accountSwitchKey in: query type: string 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-w - name: deleteinclude method: DELETE description: Akamai Remove an Include outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contractId in: query type: string 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 `group - name: groupId in: query type: string 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` - name: accountSwitchKey in: query type: string 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-w - name: includes-includeId-parents path: /includes/{includeId}/parents operations: - name: getincludeparents method: GET description: Akamai List Parent Properties outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: offset in: query type: integer description: For paginated responses, specifies the page of results you want to navigate to, starting from `0`. - name: limit in: query type: integer description: For paginated responses, specifies the number of `hostnames` objects to include on each page. - name: contractId in: query type: string 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 `group - name: groupId in: query type: string 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` - name: PAPI-Use-Prefixes in: header type: string description: __Enum__ Sets whether to represent [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes) in response data. Set to `false` when exchangin required: true - name: accountSwitchKey in: query type: string 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-w exposes: - type: rest namespace: papi-includes-rest port: 8080 description: 'REST adapter for Akamai: Property Manager API — Includes. One Spectral-compliant resource per consumed operation, prefixed with /v1.' resources: - path: /v1/includes name: includes description: REST surface for includes. operations: - method: POST name: postincludes description: Akamai Create or Clone an Include call: papi-includes.postincludes with: PAPI-Use-Prefixes: rest.PAPI-Use-Prefixes contractId: rest.contractId groupId: rest.groupId accountSwitchKey: rest.accountSwitchKey body: rest.body outputParameters: - type: object mapping: $. - method: GET name: getincludes description: Akamai List Includes call: papi-includes.getincludes with: modifiedSince: rest.modifiedSince modifiedNetwork: rest.modifiedNetwork contractId: rest.contractId groupId: rest.groupId PAPI-Use-Prefixes: rest.PAPI-Use-Prefixes accountSwitchKey: rest.accountSwitchKey outputParameters: - type: object mapping: $. - path: /v1/includes/validation-results/{activationid}/properties/{propertyid}/versions/{propertyversion} name: includes-validation-results-activationid-properties-propertyid-versions-property description: REST surface for includes-validation-results-activationId-properties-propertyId-versions-property. operations: - method: GET name: getincludevalidation description: Akamai Validate an Include call: papi-includes.getincludevalidation with: offset: rest.offset limit: rest.limit contractId: rest.contractId groupId: rest.groupId PAPI-Use-Prefixes: rest.PAPI-Use-Prefixes accountSwitchKey: rest.accountSwitchKey outputParameters: - type: object mapping: $. - path: /v1/includes/{includeid} name: includes-includeid description: REST surface for includes-includeId. operations: - method: GET name: getinclude description: Akamai Get an Include call: papi-includes.getinclude with: contractId: rest.contractId groupId: rest.groupId accountSwitchKey: rest.accountSwitchKey outputParameters: - type: object mapping: $. - method: DELETE name: deleteinclude description: Akamai Remove an Include call: papi-includes.deleteinclude with: contractId: rest.contractId groupId: rest.groupId accountSwitchKey: rest.accountSwitchKey outputParameters: - type: object mapping: $. - path: /v1/includes/{includeid}/parents name: includes-includeid-parents description: REST surface for includes-includeId-parents. operations: - method: GET name: getincludeparents description: Akamai List Parent Properties call: papi-includes.getincludeparents with: offset: rest.offset limit: rest.limit contractId: rest.contractId groupId: rest.groupId PAPI-Use-Prefixes: rest.PAPI-Use-Prefixes accountSwitchKey: rest.accountSwitchKey outputParameters: - type: object mapping: $. - type: mcp namespace: papi-includes-mcp port: 9090 transport: http description: 'MCP adapter for Akamai: Property Manager API — Includes. One tool per consumed operation, routed inline through this capability''s consumes block.' tools: - name: akamai-create-clone-include description: Akamai Create or Clone an Include hints: readOnly: false destructive: false idempotent: false call: papi-includes.postincludes with: PAPI-Use-Prefixes: tools.PAPI-Use-Prefixes contractId: tools.contractId groupId: tools.groupId accountSwitchKey: tools.accountSwitchKey body: tools.body outputParameters: - type: object mapping: $. - name: akamai-list-includes description: Akamai List Includes hints: readOnly: true destructive: false idempotent: true call: papi-includes.getincludes with: modifiedSince: tools.modifiedSince modifiedNetwork: tools.modifiedNetwork contractId: tools.contractId groupId: tools.groupId PAPI-Use-Prefixes: tools.PAPI-Use-Prefixes accountSwitchKey: tools.accountSwitchKey outputParameters: - type: object mapping: $. - name: akamai-validate-include description: Akamai Validate an Include hints: readOnly: true destructive: false idempotent: true call: papi-includes.getincludevalidation with: offset: tools.offset limit: tools.limit contractId: tools.contractId groupId: tools.groupId PAPI-Use-Prefixes: tools.PAPI-Use-Prefixes accountSwitchKey: tools.accountSwitchKey outputParameters: - type: object mapping: $. - name: akamai-get-include description: Akamai Get an Include hints: readOnly: true destructive: false idempotent: true call: papi-includes.getinclude with: contractId: tools.contractId groupId: tools.groupId accountSwitchKey: tools.accountSwitchKey outputParameters: - type: object mapping: $. - name: akamai-remove-include description: Akamai Remove an Include hints: readOnly: false destructive: true idempotent: true call: papi-includes.deleteinclude with: contractId: tools.contractId groupId: tools.groupId accountSwitchKey: tools.accountSwitchKey outputParameters: - type: object mapping: $. - name: akamai-list-parent-properties description: Akamai List Parent Properties hints: readOnly: true destructive: false idempotent: true call: papi-includes.getincludeparents with: offset: tools.offset limit: tools.limit contractId: tools.contractId groupId: tools.groupId PAPI-Use-Prefixes: tools.PAPI-Use-Prefixes accountSwitchKey: tools.accountSwitchKey outputParameters: - type: object mapping: $.