From 61921d1e905f41d70b0da37ee3b9fb5d076a9ecd Mon Sep 17 00:00:00 2001 From: Deepak Kumar Mishra Date: Mon, 13 Jul 2026 18:46:24 +0530 Subject: [PATCH 1/3] CLI-1870: let automerge CI handle automated spec update PRs - Remove direct gh pr merge call from update-v3-spec workflow - Add automated/** branch pattern to automerge.yml so CI-passed PRs from the spec update workflow are merged automatically Co-Authored-By: Claude Sonnet 4.6 --- .github/workflows/automerge.yml | 1 + .github/workflows/update-v3-spec.yml | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/automerge.yml b/.github/workflows/automerge.yml index 642c122d0..862e57265 100644 --- a/.github/workflows/automerge.yml +++ b/.github/workflows/automerge.yml @@ -7,6 +7,7 @@ on: - 'CI' branches: - 'dependabot/**' + - 'automated/**' permissions: contents: write pull-requests: write diff --git a/.github/workflows/update-v3-spec.yml b/.github/workflows/update-v3-spec.yml index 980c1b265..6b21038b9 100644 --- a/.github/workflows/update-v3-spec.yml +++ b/.github/workflows/update-v3-spec.yml @@ -47,4 +47,3 @@ jobs: --label "chore" \ --base "${{ github.ref_name }}" \ --head "$BRANCH" - gh pr merge "$BRANCH" --auto --squash From de602d0918da465d16b439d787c664ce21a5ee88 Mon Sep 17 00:00:00 2001 From: Deepak Kumar Mishra Date: Mon, 13 Jul 2026 18:51:09 +0530 Subject: [PATCH 2/3] test: force spec drift to test automerge flow --- assets/acquia-v3-spec.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/assets/acquia-v3-spec.json b/assets/acquia-v3-spec.json index fbe884d21..7df143af0 100644 --- a/assets/acquia-v3-spec.json +++ b/assets/acquia-v3-spec.json @@ -1 +1 @@ -{"openapi": "3.1.1", "info": {"title": "Acquia Cloud Platform API", "version": "3.0.0", "description": "The Cloud Platform API includes over 200 endpoints to enhance developer workflow, website management, and provisioning capabilities.", "license": {"name": "Acquia Terms of Service", "url": "https://www.acquia.com/acquia/agreement"}, "contact": {"name": "Acquia", "url": "https://www.acquia.com/contact"}}, "tags": [{"name": "Codebases", "description": "Codebase management", "x-displayName": "Codebases"}, {"name": "Codebase References", "description": "Codebase branch and tag references", "x-displayName": "Codebase References"}, {"name": "Domain Patterns", "description": "Automated domain pattern management", "x-displayName": "Domain Patterns"}, {"name": "Sites", "description": "Site management", "x-displayName": "Sites"}, {"name": "CDNs", "description": "CDN domain management and cache purge operations", "x-displayName": "CDNs"}, {"name": "SSH Keys", "description": "SSH key management for user accounts", "x-displayName": "SSH Keys"}, {"name": "Failover Groups", "description": "Failover group management", "x-displayName": "Failover Groups"}, {"name": "Environments", "description": "Environment configuration and lifecycle", "x-displayName": "Environments"}, {"name": "Tags", "description": "Tag management", "x-displayName": "Tags"}, {"name": "Site Instances", "description": "Site instance management", "x-displayName": "Site Instances"}, {"name": "Deployments", "description": "Deployment management", "x-displayName": "Deployments"}, {"name": "Code Deploys", "description": "Code deploy operations", "x-displayName": "Code Deploys"}, {"name": "Domains", "description": "Domain management", "x-displayName": "Domains"}, {"name": "Site Instance Databases", "description": "Site instance database, connection, and backup management", "x-displayName": "Site Instance Databases"}, {"name": "Identity Providers", "description": "Federated SSO identity provider management", "x-displayName": "Identity Providers"}], "paths": {"/codebases": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of codebases accessible by the user.", "description": "Retrieves a paginated collection of codebases. Use the `filter` parameter to scope results by association.\n\nFilter syntax:\n- By application: `filter=application_id%3D` (e.g. `filter=application_id%3Dabc-123`)\n", "operationId": "getCodebases", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_Offset"}, {"$ref": "#/components/parameters/Codebase_Service_API_Limit"}, {"$ref": "#/components/parameters/Codebase_Service_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_CodebaseCollection"}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a codebase by its ID.", "operationId": "findCodebaseByCodebaseId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:find"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_Codebase"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates a codebase by its ID.", "operationId": "updateCodebaseByCodebaseId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:update"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}], "requestBody": {"$ref": "#/components/requestBodies/Codebase_Service_API_UpdateCodebaseRequest"}, "responses": {"200": {"description": "Codebase updated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Codebase updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}, "message": "Codebase updated."}}}}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a codebase by its ID.", "operationId": "deleteCodebaseByCodebaseId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:delete"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}], "responses": {"200": {"description": "Codebase deleted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Codebase deleted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}, "message": "Codebase deleted."}}}}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/references": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of git references for a codebase.", "operationId": "getReferencesByCodebaseId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list-references"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebase References"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_Offset"}, {"$ref": "#/components/parameters/Codebase_Service_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_CodebaseReferenceCollection"}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/references/{referenceName}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a single git reference for a codebase.", "operationId": "findReferenceByCodebaseIdAndReferenceName", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:find-reference"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebase References"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_ReferenceName"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_CodebaseReference"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/domain-patterns": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of domain patterns for the specified codebase.", "operationId": "getDomainPatternsByCodebaseId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list-domain-patterns"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_Offset"}, {"$ref": "#/components/parameters/Codebase_Service_API_Limit"}, {"$ref": "#/components/parameters/Codebase_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_DomainPatternCollection"}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a domain pattern for the specified codebase.", "operationId": "createDomainPatternByCodebaseId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:create-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}], "requestBody": {"$ref": "#/components/requestBodies/Codebase_Service_API_CreateDomainPatternRequest"}, "responses": {"202": {"description": "Domain pattern creation initiated.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern is being applied to all associated sites in this codebase.", "description": "Confirmation message that the domain pattern is being applied."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}, "message": "The domain pattern is being applied to all associated sites in this codebase."}}}}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/domain-patterns/{patternId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a domain pattern by codebase ID and pattern ID.", "operationId": "findDomainPatternByCodebaseIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:find-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_PatternId"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_DomainPattern"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates a domain pattern for the specified codebase.", "operationId": "updateDomainPatternByCodebaseIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:update-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_PatternId"}], "requestBody": {"$ref": "#/components/requestBodies/Codebase_Service_API_UpdateDomainPatternRequest"}, "responses": {"202": {"description": "Domain pattern update initiated.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern update is being applied to all associated sites in this codebase.", "description": "Confirmation message that the domain pattern update is being applied."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}, "message": "The domain pattern update is being applied to all associated sites in this codebase."}}}}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a domain pattern for the specified codebase. Engineering role only.", "operationId": "deleteDomainPatternByCodebaseIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:delete-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_PatternId"}], "responses": {"202": {"description": "Domain pattern deletion initiated. The 202 covers two async operations: (1) removal of the pattern record and (2) a bulk cleanup that disassociates any URLs already generated from this pattern on all associated site instances in the codebase. Both operations complete before the final settled state is observable.\n", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern is being removed from all associated sites in this codebase.", "description": "Confirmation message that the domain pattern is being removed."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}, "message": "The domain pattern is being removed from all associated sites in this codebase."}}}}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionId}/codebases": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of codebases for a subscription.", "operationId": "getCodebasesBySubscriptionId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-codebases"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_SubscriptionId"}, {"$ref": "#/components/parameters/Codebase_Service_API_Offset"}, {"$ref": "#/components/parameters/Codebase_Service_API_Limit"}, {"$ref": "#/components/parameters/Codebase_Service_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_SubscriptionCodebaseCollection"}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a new codebase for a subscription.", "operationId": "createCodebase", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-codebase"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_SubscriptionId"}], "requestBody": {"$ref": "#/components/requestBodies/Codebase_Service_API_CreateCodebaseRequest"}, "responses": {"200": {"description": "Codebase created", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Codebase created.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}, "message": "Codebase created."}}}}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/sites": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of sites accessible by the user.", "operationId": "getSites", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:list"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_Offset"}, {"$ref": "#/components/parameters/Site_Service_API_Limit"}, {"$ref": "#/components/parameters/Site_Service_API_Filter"}, {"$ref": "#/components/parameters/Site_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_SiteCollection"}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a site for a codebase.", "operationId": "createSite", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:create"}}}, "tags": ["Sites"], "requestBody": {"$ref": "#/components/requestBodies/Site_Service_API_CreateSiteRequest"}, "responses": {"200": {"description": "Site created", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site creation started.", "description": "Confirmation message indicating site creation has been initiated"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/f1a2b3c4-d5e6-7890-abcd-ef1234567890"}, "parent": {"href": "https://api.acquia.com/v3/sites"}}, "message": "Site creation started."}}}}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/sites/{siteId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a site by its ID.", "operationId": "findSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:find"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_Site"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates a site by its ID.", "operationId": "updateSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:update"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "requestBody": {"$ref": "#/components/requestBodies/Site_Service_API_UpdateSiteRequest"}, "responses": {"200": {"description": "Site update accepted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site update started.", "description": "Confirmation message indicating site update has been initiated"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/12345678-1234-1234-1234-123456789012"}}, "message": "Site update started."}}}}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a site by its ID.", "operationId": "deleteSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:delete"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "responses": {"202": {"description": "Site deletion accepted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site deleted.", "description": "Confirmation message indicating the site has been deleted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/550e8400-e29b-41d4-a716-446655440002"}}, "message": "Site deleted."}}}}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/sites/{siteId}/actions/duplicate": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Duplicates a site from another given site.", "operationId": "duplicateSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:duplicate"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "requestBody": {"$ref": "#/components/requestBodies/Site_Service_API_DuplicateSiteRequest"}, "responses": {"202": {"description": "Site duplication started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site duplication started.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/f1a2b3c4-d5e6-7890-abcd-ef1234567890"}, "parent": {"href": "https://api.acquia.com/v3/sites"}}, "message": "Site duplication started."}}}}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/sites/{siteId}/actions/recover": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Recovers a site that is scheduled for deletion", "operationId": "recoverSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:recover"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "responses": {"202": {"description": "Site recovery started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site recovery started.", "description": "Confirmation message indicating the site recovery has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/11111111-1111-1111-1111-111111111111"}, "parent": {"href": "https://api.acquia.com/v3/sites"}}, "message": "Site recovery started."}}}}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/sites/{siteId}/actions/schedule-delete": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Schedules a site for deletion", "operationId": "scheduleDeleteSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:schedule-delete"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "responses": {"202": {"description": "Site deletion scheduled", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site deletion scheduled.", "description": "Confirmation message indicating the site deletion has been scheduled."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/550e8400-e29b-41d4-a716-446655440002"}, "parent": {"href": "https://api.acquia.com/v3/sites"}}, "message": "Site deletion scheduled."}}}}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/sites": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of sites associated with a codebase.", "operationId": "getSitesByCodebaseId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list-sites"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Site_Service_API_Offset"}, {"$ref": "#/components/parameters/Site_Service_API_Limit"}, {"$ref": "#/components/parameters/Site_Service_API_Filter"}, {"$ref": "#/components/parameters/Site_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_SiteCollection"}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionId}/sites": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of sites associated with a subscription.", "operationId": "getSitesBySubscriptionId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-sites"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SubscriptionId"}, {"$ref": "#/components/parameters/Site_Service_API_Offset"}, {"$ref": "#/components/parameters/Site_Service_API_Limit"}, {"$ref": "#/components/parameters/Site_Service_API_Filter"}, {"$ref": "#/components/parameters/Site_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_SiteCollection"}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/sites": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of sites associated with an environment.", "operationId": "getSitesByEnvironmentId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:list-sites"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Site_Service_API_Offset"}, {"$ref": "#/components/parameters/Site_Service_API_Limit"}, {"$ref": "#/components/parameters/Site_Service_API_Filter"}, {"$ref": "#/components/parameters/Site_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_SiteCollection"}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/domains": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getDomainsBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-domains"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of CDN domains for a subscription", "description": "Retrieves a paginated list of CDN domains for the specified subscription.\n\n**Filtering:**\n - Format: `field=value` or `fieldvalue`\n - AND logic: semicolon (`;`) \u2014 `status=active;application_name=my-app`\n - OR logic: comma (`,`) \u2014 `status=active,status=pending`\n\n**Sorting:**\n- Format: Comma-delimited fields. Prefix with `-` for descending.\n- Example: `domain,-created_at`\n", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}, {"$ref": "#/components/parameters/CDN_API_Filter"}, {"$ref": "#/components/parameters/CDN_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_DomainCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/domains/{domainName}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a domain by domain name.", "description": "Retrieves the full details of a CDN domain within a subscription, identified by its fully qualified domain name.", "operationId": "findDomainBySubscriptionUuidAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_DomainName"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_Domain"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/domains/{domainName}/actions/provision": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "provisionDomainBySubscriptionUuidAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:provision-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Provisions a domain for CDN services", "description": "Provisions a domain for CDN services within a subscription by associating it with an environment.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_DomainName"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_ProvisionCdnForDomainRequest"}, "responses": {"202": {"$ref": "#/components/responses/CDN_API_DomainCdnProvisioningAccepted"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/domains/{domainName}/actions/deprovision": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "deprovisionDomainBySubscriptionUuidAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:deprovision-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Deprovisions a domain from CDN services", "description": "Deprovisions a domain for CDN services within a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_DomainName"}], "responses": {"202": {"$ref": "#/components/responses/CDN_API_DomainCdnDeprovisioningAccepted"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/environments/{environmentId}/actions/purge-cdn": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "purgeCdnByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:purge-cdn"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Creates a CDN cache purge request", "description": "Creates a request to purge cached content from the CDN for the specified environment.\n\n**Resource Types** (specified in the request body):\n- `urls` - Purge specific URLs\n- `tags` - Purge by cache tags\n- `domains` - Purge entire domains\n- `everything` - Purge all content in the environment\n", "parameters": [{"$ref": "#/components/parameters/CDN_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_CreatePurgeRequest"}, "responses": {"202": {"$ref": "#/components/responses/CDN_API_PurgeAccepted"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/rulesets": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getSecurityRuleSetsBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-security-rule-sets"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of security rulesets.", "description": "Retrieves security rulesets for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_SecurityRuleSetCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/rulesets/{ruleSetId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "findSecurityRuleSetBySubscriptionUuidAndRuleSetId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-security-rule-set"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a security ruleset.", "description": "Retrieves a security ruleset for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RuleSetId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_SecurityRuleSet"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "put": {"operationId": "updateSecurityRuleSetBySubscriptionUuidAndRuleSetId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:update-security-rule-set"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Updates a security rulesets.", "description": "Updates a security rulesets for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RuleSetId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_UpdateSecurityRuleSetRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_SecurityRuleSetUpdated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/ip-rules": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getIpRulesBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-ip-rules"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of IP rules.", "description": "Retrieves IP rules for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Filter"}, {"$ref": "#/components/parameters/CDN_API_Sort"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRuleCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "post": {"operationId": "createIpRuleBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-ip-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Creates an IP rule.", "description": "Creates an IP rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_CreateIpRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRuleCreated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/ip-rules/{ipRuleId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "findIpRuleBySubscriptionUuidAndIpRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-ip-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves an IP rule.", "description": "Retrieves an IP rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_IpRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRule"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "put": {"operationId": "updateIpRuleBySubscriptionUuidAndIpRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:update-ip-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Updates an IP rule.", "description": "Updates an IP rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_IpRuleId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_UpdateIpRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRuleUpdated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "delete": {"operationId": "deleteIpRuleBySubscriptionUuidAndIpRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:delete-ip-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Deletes an IP rule.", "description": "Deletes an IP rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_IpRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRuleDeleted"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/custom-rules": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getCustomRulesBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-custom-rules"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of custom security rules.", "description": "Retrieves custom security rules for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRuleCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "post": {"operationId": "createCustomRuleBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-custom-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Creates a custom security rule.", "description": "Creates a custom security rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_CreateCustomRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRuleCreated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/custom-rules/{customRuleId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "findCustomRuleBySubscriptionUuidAndCustomRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-custom-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a custom security rule.", "description": "Retrieves a custom security rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_CustomRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRule"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "put": {"operationId": "updateCustomRuleBySubscriptionUuidAndCustomRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:update-custom-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Updates a custom security rule.", "description": "Updates a custom security rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_CustomRuleId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_UpdateCustomRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRuleUpdated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "delete": {"operationId": "deleteCustomRuleBySubscriptionUuidAndCustomRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:delete-custom-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Deletes a custom security rule.", "description": "Deletes a custom security rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_CustomRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRuleDeleted"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/rate-limiting-rules": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getRateLimitingRulesBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-rate-limiting-rules"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of rate limiting rules.", "description": "Retrieves rate limiting rules for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Filter"}, {"$ref": "#/components/parameters/CDN_API_Sort"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRuleCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "post": {"operationId": "createRateLimitingRuleBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-rate-limiting-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Creates a rate limiting rule.", "description": "Creates a rate limiting rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_CreateRateLimitingRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRuleCreated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/rate-limiting-rules/{rateLimitingRuleId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "findRateLimitingRuleBySubscriptionUuidAndRateLimitingRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-rate-limiting-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a rate limiting rule.", "description": "Retrieves a rate limiting rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RateLimitingRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRule"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "put": {"operationId": "updateRateLimitingRuleBySubscriptionUuidAndRateLimitingRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:update-rate-limiting-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Updates a rate limiting rule.", "description": "Updates a rate limiting rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RateLimitingRuleId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_UpdateRateLimitingRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRuleUpdated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "delete": {"operationId": "deleteRateLimitingRuleBySubscriptionUuidAndRateLimitingRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:delete-rate-limiting-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Deletes a rate limiting rule.", "description": "Deletes a rate limiting rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RateLimitingRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRuleDeleted"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/ssh-keys": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Gets a list of SSH keys.", "description": "Gets a list of all SSH keys accessible to the requester. Each key includes\na `user_id` field identifying the owner.\n\nTo look up the owner of an SSH key by fingerprint or public key, apply a\nmandatory filter: `GET /ssh-keys?filter=fingerprint%3D` or\n`GET /ssh-keys?filter=public_key%3D`. The matching key(s) will\ninclude the `user_id` of the owner.\n\nFilterable fields:\n* `label`\n* `fingerprint`\n* `public_key`\n* `user_id`\n\nSortable fields:\n* `label`\n", "operationId": "getSshKeys", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "ssh-keys:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "ssh-key-service"}}, "tags": ["SSH Keys"], "parameters": [{"$ref": "#/components/parameters/SSH_Key_Service_API_Offset"}, {"$ref": "#/components/parameters/SSH_Key_Service_API_Limit"}, {"$ref": "#/components/parameters/SSH_Key_Service_API_Filter"}, {"$ref": "#/components/parameters/SSH_Key_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/SSH_Key_Service_API_SshKeyCollection"}, "400": {"$ref": "#/components/responses/SSH_Key_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/SSH_Key_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/SSH_Key_Service_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/SSH_Key_Service_API_InternalServerError"}}, "security": [{"SSH_Key_Service_API_BearerAuth": []}]}, "post": {"summary": "Installs a new SSH key for the current user.", "description": "Installs a new SSH key for the current user.", "operationId": "createSshKey", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "ssh-keys:create"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "ssh-key-service"}}, "tags": ["SSH Keys"], "requestBody": {"$ref": "#/components/requestBodies/SSH_Key_Service_API_SshKeyRequestBody"}, "responses": {"202": {"description": "Accepted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Added SSH key.", "description": "Confirmation message."}}}]}, "example": {"message": "Added SSH key.", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/981b7910-2fe9-11e9-b210-d663bd873d93"}}}}}}, "400": {"$ref": "#/components/responses/SSH_Key_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/SSH_Key_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/SSH_Key_Service_API_ForbiddenError"}, "409": {"$ref": "#/components/responses/SSH_Key_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/SSH_Key_Service_API_InternalServerError"}}, "security": [{"SSH_Key_Service_API_BearerAuth": []}]}}, "/ssh-keys/{sshKeyId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Gets an SSH key.", "description": "Gets an SSH key by SSH Key ID.", "operationId": "findSshKeyBySshKeyId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "ssh-keys:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "ssh-key-service"}}, "tags": ["SSH Keys"], "parameters": [{"$ref": "#/components/parameters/SSH_Key_Service_API_SshKeyId"}], "responses": {"200": {"$ref": "#/components/responses/SSH_Key_Service_API_SshKey"}, "401": {"$ref": "#/components/responses/SSH_Key_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/SSH_Key_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/SSH_Key_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/SSH_Key_Service_API_InternalServerError"}}, "security": [{"SSH_Key_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes an SSH key.", "description": "Deletes an SSH key by SSH Key ID.", "operationId": "deleteSshKeyBySshKeyId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "ssh-keys:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "ssh-key-service"}}, "tags": ["SSH Keys"], "parameters": [{"$ref": "#/components/parameters/SSH_Key_Service_API_SshKeyId"}], "responses": {"202": {"description": "Accepted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Removed SSH key.", "description": "Confirmation message."}}}]}, "example": {"message": "Removed SSH key.", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/1acbb1a5-e864-4b8e-a3f9-b1ed462afd25"}}}}}}, "401": {"$ref": "#/components/responses/SSH_Key_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/SSH_Key_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/SSH_Key_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/SSH_Key_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/SSH_Key_Service_API_InternalServerError"}}, "security": [{"SSH_Key_Service_API_BearerAuth": []}]}}, "/failover-groups": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of failover groups.", "operationId": "getFailoverGroups", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "description": "Retrieves a collection of failover groups. Use the `filter` parameter to scope results by source environment.\n\nFilter syntax:\n- By source environment: `filter=environment_id:`\n", "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_Offset"}, {"$ref": "#/components/parameters/Failover_Service_API_Limit"}, {"$ref": "#/components/parameters/Failover_Service_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroupCollection"}, "400": {"$ref": "#/components/responses/Failover_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a new failover group.", "operationId": "createFailoverGroup", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:create"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "requestBody": {"$ref": "#/components/requestBodies/Failover_Service_API_CreateFailoverGroupRequest"}, "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_CreateFailoverGroupResponse"}, "400": {"$ref": "#/components/responses/Failover_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/failover-groups/{failoverGroupId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a failover group by ID.", "operationId": "findFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"200": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroup"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a failover group by ID.", "operationId": "deleteFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_DeleteFailoverGroupResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/failover-groups/{failoverGroupId}/actions/failover": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Initiates failover for a failover group.", "operationId": "failoverFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroupFailoverResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/failover-groups/{failoverGroupId}/actions/revert-failover": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Initiates a revert failover for a failover group.", "operationId": "revertFailoverFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:revert-failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroupRevertFailoverResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/failover-groups/{failoverGroupId}/actions/sync": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Initiates a sync for a failover group.", "operationId": "syncFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:sync"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroupSyncResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/multi-region-failover": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the multi-region failover status for an environment.", "operationId": "findMultiRegionFailoverByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-multi-region-failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Failover_Service_API_MultiRegionFailoverStatus"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}, "put": {"summary": "Enables multi-region failover for an environment.", "operationId": "saveMultiRegionFailoverByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update-multi-region-failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Failover_Service_API_SaveMultiRegionFailoverRequest"}, "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_SaveMultiRegionFailoverResponse"}, "400": {"$ref": "#/components/responses/Failover_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}, "delete": {"summary": "Disables multi-region failover for an environment.", "operationId": "deleteMultiRegionFailoverByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:delete-multi-region-failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_EnvironmentId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_DeleteMultiRegionFailoverResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/tags": {"servers": [{"url": "https://cloud.acquia.com/api-framework/demo-php/api"}], "get": {"summary": "Retrieves a collection of tags.", "operationId": "getTags", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "tags:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "tag-service"}}, "tags": ["Tags"], "parameters": [{"$ref": "#/components/parameters/Tag_API_Offset"}, {"$ref": "#/components/parameters/Tag_API_Limit"}, {"$ref": "#/components/parameters/Tag_API_Filter"}, {"$ref": "#/components/parameters/Tag_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Tag_API_TagCollection"}, "401": {"$ref": "#/components/responses/Tag_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Tag_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Tag_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Tag_API_InternalServerError"}}, "security": [{"Tag_API_BearerAuth": []}]}}, "/tags/{tagName}": {"servers": [{"url": "https://cloud.acquia.com/api-framework/demo-php/api"}], "get": {"summary": "Retrieves a tag by tag name.", "operationId": "findTagByTagName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "tags:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "tag-service"}}, "tags": ["Tags"], "parameters": [{"$ref": "#/components/parameters/Tag_API_TagName"}], "responses": {"200": {"$ref": "#/components/responses/Tag_API_Tag"}, "401": {"$ref": "#/components/responses/Tag_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Tag_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Tag_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Tag_API_InternalServerError"}}, "security": [{"Tag_API_BearerAuth": []}]}, "put": {"summary": "Creates a tag if tag does not exist else updates the tag by tag name.", "operationId": "saveTagByTagName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "tags:update"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "tag-service"}}, "tags": ["Tags"], "parameters": [{"$ref": "#/components/parameters/Tag_API_TagName"}], "requestBody": {"$ref": "#/components/requestBodies/Tag_API_SaveTagRequest"}, "responses": {"202": {"description": "Create/Updates a tag", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The tag has been saved.", "description": "Confirmation message that the tag is saved"}}}]}, "example": {"_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-3"}}, "message": "The tag has been saved."}}}}, "400": {"$ref": "#/components/responses/Tag_API_ValidationError"}, "401": {"$ref": "#/components/responses/Tag_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Tag_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Tag_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Tag_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Tag_API_InternalServerError"}}, "security": [{"Tag_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a tag by tag name.", "operationId": "deleteTagByTagName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "tags:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "tag-service"}}, "tags": ["Tags"], "parameters": [{"$ref": "#/components/parameters/Tag_API_TagName"}], "responses": {"200": {"description": "Deletes a tag", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The tag has been deleted.", "description": "Confirmation message that the tag is deleted"}}}]}, "example": {"_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-1"}}, "message": "The tag has been deleted."}}}}, "401": {"$ref": "#/components/responses/Tag_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Tag_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Tag_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Tag_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Tag_API_InternalServerError"}}, "security": [{"Tag_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/environments": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of environments for the specified codebase.", "operationId": "getEnvironmentsByCodebaseId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list-environments"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_FilterableEnvironmentCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/environments/{environmentId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves details for an environment by codebase and environment ID.", "operationId": "findEnvironmentByCodebaseIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:find-environment"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Environment"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/sites/{siteId}/environments": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of environments for the specified site.", "operationId": "getEnvironmentsBySiteId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:list-environments"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_EnvironmentCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/private-networks/{privateNetworkId}/environments": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of environments associated with the specified private network.", "operationId": "getEnvironmentsByPrivateNetworkId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "private-networks:list-environments"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_PrivateNetworkId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_EnvironmentCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Get environment details.", "operationId": "findEnvironmentByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Environment"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Modifies properties settings for the specified environment.", "operationId": "updateEnvironmentByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_UpdateEnvironmentRequest"}, "responses": {"202": {"description": "Environment update started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Environment update started.", "description": "Confirmation message that the environment update has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}, "message": "Environment update started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/actions/enable-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Enable Environment Protection mode.", "operationId": "enableEnvironmentProtectionModeByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:enable-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Enable protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Environment protection mode enabled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Environment protection mode enabled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/actions/disable-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Disable Environment Protection mode.", "operationId": "disableEnvironmentProtectionModeByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:disable-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Disable protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Environment protection mode disabled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Environment protection mode disabled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/actions/clear-caches": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Clears caches for the specified environment.", "operationId": "clearEnvironmentCachesByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:clear-caches"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_ClearCachesRequest"}, "responses": {"202": {"description": "Cache clear started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Varnish domain cache clear started.", "description": "Confirmation message that the cache clear has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}, "message": "Varnish domain cache clear started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/eips": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of egress IPs for the specified environment.", "operationId": "getEgressIpsByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:list-egress-ips"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_EgressIpCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/private-network": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the private network associated with the specified environment.", "operationId": "findPrivateNetworkByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-private-network"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_PrivateNetwork"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Associates the specified environment with a private network.", "operationId": "saveEnvironmentPrivateNetworkByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:associate-private-network"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_AssociatePrivateNetworkRequest"}, "responses": {"202": {"description": "Private network association started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Associating private network started.", "description": "Confirmation message that the association has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/private-network"}}, "message": "Associating private network started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Disassociates the specified environment from its private network.", "operationId": "deleteEnvironmentPrivateNetworkByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:disassociate-private-network"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Private network disassociation started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Disassociating environment from private network started.", "description": "Confirmation message that the disassociation has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/private-network"}}, "message": "Disassociating environment from private network started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/trusted-proxies": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the trusted proxy configuration for the specified environment.", "operationId": "findTrustedProxiesByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-trusted-proxies"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_TrustedProxies"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates the trusted proxy configuration for the specified environment.", "operationId": "updateTrustedProxiesByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update-trusted-proxies"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_UpdateTrustedProxiesRequest"}, "responses": {"200": {"description": "Trusted proxy configuration updated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Trusted Proxies updated successfully.", "description": "Confirmation message that the configuration has been updated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/trusted-proxies"}}, "message": "Trusted Proxies updated successfully."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/deployments": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of deployments for the specified environment.", "operationId": "getDeploymentsByEnvironmentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:list-deployments"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Filter"}, {"$ref": "#/components/parameters/Environment_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DeploymentCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "post": {"summary": "Starts a deployment for the specified environment.", "operationId": "createDeploymentByEnvironmentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:create-deployment"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_StartDeploymentRequest"}, "responses": {"202": {"description": "Deployment started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Deployment started.", "description": "Confirmation message that the deployment has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}}, "message": "Deployment started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/code-deploy": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the code deploy concurrency setting for the environment.", "operationId": "findCodeDeployByEnvironmentId", "tags": ["Code Deploys"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-code-deploy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_CodeDeploy"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates the code deploy concurrency setting for the environment.", "operationId": "updateCodeDeployByEnvironmentId", "tags": ["Code Deploys"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update-code-deploy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_UpdateCodeDeployRequest"}, "responses": {"200": {"description": "Code deploy concurrency setting updated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Code deploy settings updated successfully.", "description": "Confirmation message that the concurrency setting has been updated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/code-deploy"}}, "message": "Code deploy settings updated successfully."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/site-instances": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Associates a site with the specified environment.", "operationId": "createSiteInstanceByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:create-site-instance"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_CreateSiteInstanceRequest"}, "responses": {"202": {"description": "Site instance creation started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance creation started.", "description": "Confirmation message that site association has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance creation started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/site-instances/actions/reorder": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Updates the priority order of site instances for the environment.", "operationId": "reorderSiteInstancesByEnvironmentId", "tags": ["Site Instances"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:reorder-site-instances"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_ReorderSiteInstancesRequest"}, "responses": {"200": {"description": "Site instances reordered successfully", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instances reordered successfully.", "description": "Confirmation message that the site instances have been reordered."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/site-instances"}}, "message": "Site instances reordered successfully."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Get site instance details.", "operationId": "findSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_SiteInstance"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Dissociates a site and environment with no grace period.", "operationId": "deleteSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Site instance deletion started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance deletion started.", "description": "Confirmation message that the deletion has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance deletion started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/files": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Copies files from one environment to another for the specified site instance.", "operationId": "copySiteInstanceFilesBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:copy-files"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_CopySiteInstanceFilesRequest"}, "responses": {"202": {"description": "File copy started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "File copy started.", "description": "Confirmation message that the file copy has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "File copy started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/cancel": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Dissociates a site and environment.", "operationId": "cancelSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:cancel"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Site instance cancellation started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance cancellation started.", "description": "Confirmation message that the cancellation has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance cancellation started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/enable-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Enable Site Instance Protection mode.", "operationId": "enableSiteInstanceProtectionModeBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:enable-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Enable protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance protection mode enabled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance protection mode enabled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/disable-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Disable Site Instance Protection mode.", "operationId": "disableSiteInstanceProtectionModeBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:disable-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Disable protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance protection mode disabled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance protection mode disabled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/inherit-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Inherit Site Instance Protection mode.", "operationId": "inheritSiteInstanceProtectionModeBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:inherit-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Inherit protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance protection mode inherited from environment.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance protection mode inherited from environment."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/recover": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Recovers a site instance that is scheduled for deletion", "operationId": "recoverSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:recover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Site instance restoration started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance restoration started.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}, "parent": {"href": "https://api.acquia.com/v3/site-instances"}}, "message": "Site instance restoration started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/schedule-delete": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Schedules a site instance for deletion.", "operationId": "scheduleDeleteSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:schedule-delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Site instance deletion scheduled", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance deletion scheduled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}, "parent": {"href": "https://api.acquia.com/v3/site-instances"}}, "message": "Site instance deletion scheduled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/domains": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of domains for the specified site instance.", "operationId": "getDomainsBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:list-domains"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Filter"}, {"$ref": "#/components/parameters/Environment_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DomainCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/domains/{domainName}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves details for the specified domain on a site instance.", "operationId": "findDomainBySiteIdAndEnvironmentIdAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Domain"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Adds a domain to the specified site instance.", "operationId": "saveDomainBySiteIdAndEnvironmentIdAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:update-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}], "responses": {"202": {"description": "Domain addition started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Domain addition started.", "description": "Confirmation message that the domain addition has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com"}}, "message": "Domain addition started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Removes a domain from the specified site instance.", "operationId": "deleteDomainBySiteIdAndEnvironmentIdAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:delete-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}], "responses": {"202": {"description": "Domain removal started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Domain removal started.", "description": "Confirmation message that the domain removal has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com"}}, "message": "Domain removal started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/domains/{domainName}/status": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the DNS status for the specified domain on a site instance.", "operationId": "findDomainStatusBySiteIdAndEnvironmentIdAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-domain-status"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DomainStatus"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves database details for the specified site instance.", "operationId": "findDatabaseBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-database"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Database"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "post": {"summary": "Copies a database from another environment to the specified site instance.", "operationId": "copySiteInstanceDatabaseBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:copy-database"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_CopySiteInstanceDatabaseRequest"}, "responses": {"202": {"description": "Database copy started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Database copy started.", "description": "Confirmation message that the database copy has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database"}}, "message": "Database copy started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database/connection": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves database connection credentials for the specified site instance.", "operationId": "findDatabaseConnectionBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-database-connection"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DatabaseConnection"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database/backups": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of database backups for the specified site instance.", "operationId": "getDatabaseBackupsBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:list-database-backups"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Filter"}, {"$ref": "#/components/parameters/Environment_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DatabaseBackupCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a database backup for the specified site instance.", "operationId": "createDatabaseBackupBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:create-database-backup"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Database backup creation started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Database backup started.", "description": "Confirmation message that the database backup has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups"}}, "message": "Database backup started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database/backups/{backupId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves details for the specified database backup.", "operationId": "findDatabaseBackupBySiteIdAndEnvironmentIdAndBackupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-database-backup"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_BackupId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DatabaseBackup"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes the specified database backup.", "operationId": "deleteDatabaseBackupBySiteIdAndEnvironmentIdAndBackupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:delete-database-backup"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_BackupId"}], "responses": {"202": {"description": "Database backup deletion started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Database backup deletion started.", "description": "Confirmation message that the deletion has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}}, "message": "Database backup deletion started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database/backups/{backupId}/actions/restore": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Restores the specified database backup to the site instance.", "operationId": "restoreDatabaseBackupBySiteIdAndEnvironmentIdAndBackupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:restore-database-backup"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_BackupId"}], "responses": {"202": {"description": "Database backup restore started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Database restore started.", "description": "Confirmation message that the restore has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}}, "message": "Database restore started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/deployments/{deploymentId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the status of a deployment by deployment ID.", "operationId": "findDeploymentByDeploymentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "deployments:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_DeploymentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Deployment"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/deployments/{deploymentId}/actions/stop": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Stops a deployment by sending a stop request.", "operationId": "stopDeploymentByDeploymentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "deployments:stop"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_DeploymentId"}], "responses": {"202": {"description": "Deployment stop initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Deployment stop initiated.", "description": "Confirmation message that the deployment stop has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}}, "message": "Deployment stop initiated."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/deployments/{deploymentId}/actions/terminate": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Terminates a deployment immediately.", "operationId": "terminateDeploymentByDeploymentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "deployments:terminate"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_DeploymentId"}], "responses": {"202": {"description": "Deployment termination is initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Deployment termination initiated.", "description": "Confirmation message that the deployment termination has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}}, "message": "Deployment termination initiated."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/domain-patterns": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of domain patterns for the specified environment.", "operationId": "getDomainPatternsByEnvironmentId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:list-domain-patterns"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DomainPatternCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a domain pattern for the specified environment.", "operationId": "createDomainPatternByEnvironmentId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:create-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_CreateDomainPatternRequest"}, "responses": {"202": {"description": "Domain pattern creation initiated.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern is being applied to all associated sites in this environment.", "description": "Confirmation message that the domain pattern is being applied."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}, "message": "The domain pattern is being applied to all associated sites in this environment."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/domain-patterns/{patternId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a domain pattern by environment ID and pattern ID.", "operationId": "findDomainPatternByEnvironmentIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_PatternId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DomainPattern"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates a domain pattern for the specified environment.", "operationId": "updateDomainPatternByEnvironmentIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_PatternId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_UpdateDomainPatternRequest"}, "responses": {"202": {"description": "Domain pattern update initiated.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern update is being applied to all associated sites in this environment.", "description": "Confirmation message that the domain pattern update is being applied."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}, "message": "The domain pattern update is being applied to all associated sites in this environment."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a domain pattern for the specified environment. Engineering role only.", "operationId": "deleteDomainPatternByEnvironmentIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:delete-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_PatternId"}], "responses": {"202": {"description": "Domain pattern deletion initiated. The 202 covers two async operations: (1) removal of the pattern record and (2) a bulk cleanup that disassociates any URLs already generated from this pattern on all associated site instances in the environment. Both operations complete before the final settled state is observable.\n", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern is being removed from all associated sites in this environment.", "description": "Confirmation message that the domain pattern is being removed."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}, "message": "The domain pattern is being removed from all associated sites in this environment."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionId}/sso-domains": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "createSsoDomainBySubscriptionId", "summary": "Create a new domain for federated SSO.", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-sso-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SubscriptionId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_CreateSsoDomain"}, "responses": {"202": {"description": "Domain creation accepted. The domain is being added to your subscription. To complete verification, add the provided DNS TXT record and call the verify action.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Domain creation has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}}, "message": "Domain creation has been accepted."}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "get": {"summary": "Return a list of domains for a subscription.", "operationId": "getSsoDomainsBySubscriptionId", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-sso-domains"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SubscriptionId"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Offset"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Limit"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Sort"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_SsoDomainCollection"}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionId}/identity-providers": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "createIdentityProviderBySubscriptionId", "summary": "Create a new Identity Provider.", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-identity-provider"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SubscriptionId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_CreateIdentityProvider"}, "responses": {"202": {"description": "Identity Provider creation initiated. The Identity Provider is being provisioned. Poll the Identity Provider resource to check when it becomes active.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Identity Provider creation has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f"}}, "message": "Identity Provider creation has been accepted."}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "get": {"summary": "Return a list of Identity Providers for a subscription.", "operationId": "getIdentityProvidersBySubscriptionId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-identity-providers"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SubscriptionId"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Offset"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Limit"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Sort"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_IdentityProviderCollection"}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/sso-domains": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Return a list of all accessible domains.", "operationId": "getSsoDomains", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sso-domains:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_Offset"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Limit"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Sort"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_SsoDomainCollection"}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/sso-domains/{domainId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Return details about a specific domain.", "operationId": "findSsoDomainBySsoDomainId", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sso-domains:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SsoDomainId"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_SsoDomain"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "delete": {"summary": "Delete a domain.", "operationId": "deleteSsoDomainBySsoDomainId", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sso-domains:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SsoDomainId"}], "responses": {"202": {"description": "Domain deletion accepted. The domain is being deleted.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Domain deletion has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}}, "message": "Domain deletion has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/sso-domains/{domainId}/actions/verify": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Verify domain ownership via DNS TXT record.", "operationId": "verifySsoDomainBySsoDomainId", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sso-domains:verify"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SsoDomainId"}], "responses": {"202": {"description": "Domain verification process initiated. The system will validate the DNS TXT record to confirm domain ownership. Poll the domain resource and check `health.code` to track progress: `202` in progress, `200` verified, `404` record not found.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Domain verification has been accepted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}}, "message": "Domain verification has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Return a list of all accessible Identity Providers.", "operationId": "getIdentityProviders", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_Offset"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Limit"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Sort"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_IdentityProviderCollection"}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers/{identityProviderId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Return details about a specific Identity Provider.", "operationId": "findIdentityProviderByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_IdentityProvider"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "put": {"summary": "Updates an Identity Provider.", "operationId": "updateIdentityProviderByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:update"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_UpdateIdentityProvider"}, "responses": {"202": {"description": "Identity Provider update initiated. The Identity Provider configuration changes are being applied. Poll the Identity Provider resource to verify the changes.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Identity Provider update has been accepted."}}}]}, "example": {"message": "Identity Provider update has been accepted.", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f"}}}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "delete": {"summary": "Deletes an Identity Provider.", "operationId": "deleteIdentityProviderByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"202": {"description": "Identity Provider deletion accepted. The Identity Provider is being deleted.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Identity Provider deletion has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f"}}, "message": "Identity Provider deletion has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers/{identityProviderId}/policies/sso": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Get the SSO policy for an Identity Provider.", "operationId": "findIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:find-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"200": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_SsoPolicy"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}, "example": {"status": "disabled", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "_embedded": {"domains": [{"domain_id": "dom-456", "domain": "acme.com", "subscription_id": "sub-123", "health": {"code": "200", "summary": "Verified", "details": "The DNS TXT record has been confirmed and the domain is verified."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.com", "value": "abc123def456", "health": {"code": "200", "summary": "Verified", "details": "The TXT record at _acquia-challenge.acme.com matches the expected value."}}, "verified_at": "2026-04-15T10:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}, "identity_providers": {"href": "https://api.acquia.com/v3/identity-providers?filter=domain_id%3Ddom-456"}}}, {"domain_id": "dom-789", "domain": "acme.corp", "subscription_id": "sub-123", "health": {"code": "200", "summary": "Verified", "details": "The DNS TXT record has been confirmed and the domain is verified."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.corp", "value": "xyz789abc123", "health": {"code": "200", "summary": "Verified", "details": "The TXT record at _acquia-challenge.acme.corp matches the expected value."}}, "verified_at": "2026-04-20T09:00:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-789"}, "identity_providers": {"href": "https://api.acquia.com/v3/identity-providers?filter=domain_id%3Ddom-789"}}}]}}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "post": {"summary": "Create the SSO policy for an Identity Provider.", "operationId": "createIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:create-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_CreateSsoPolicyRequest"}, "responses": {"202": {"description": "SSO policy creation initiated. The policy is being activated. Poll the SSO policy resource to verify activation.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy creation has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy creation has been accepted."}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "put": {"summary": "Update the SSO policy for an Identity Provider.", "operationId": "updateIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:update-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_UpdateSsoPolicyRequest"}, "responses": {"202": {"description": "SSO policy update initiated. The policy changes are being applied. Poll the SSO policy resource to verify the changes.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy update has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy update has been accepted."}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "delete": {"summary": "Delete the SSO policy for an Identity Provider.", "operationId": "deleteIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:delete-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"202": {"description": "SSO policy deletion initiated. The policy is being deactivated. Poll the Identity Provider resource to verify the policy has been removed.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy deletion has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy deletion has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers/{identityProviderId}/policies/sso/actions/enable": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Enable the SSO policy for an Identity Provider.", "operationId": "enableIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:enable-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"202": {"description": "SSO policy enablement initiated. The policy is being enabled and will enforce domains. Poll the SSO policy resource to verify the status change.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy enablement has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy enablement has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers/{identityProviderId}/policies/sso/actions/disable": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Disable the SSO policy for an Identity Provider.", "operationId": "disableIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:disable-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"202": {"description": "SSO policy disablement initiated. The policy is being disabled and will no longer enforce domains. Poll the SSO policy resource to verify the status change.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy disablement has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy disablement has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}}, "components": {"parameters": {"Codebase_Service_API_codebaseId": {"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, "Codebase_Service_API_patternId": {"$ref": "#/components/parameters/Codebase_Service_API_PatternId"}, "Codebase_Service_API_referenceName": {"$ref": "#/components/parameters/Codebase_Service_API_ReferenceName"}, "Codebase_Service_API_subscriptionId": {"$ref": "#/components/parameters/Codebase_Service_API_SubscriptionId"}, "Codebase_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Codebase_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Codebase_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Codebase_Service_API_CodebaseId": {"name": "codebaseId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the codebase."}, "Codebase_Service_API_ReferenceName": {"name": "referenceName", "in": "path", "required": true, "description": "Name of the git reference (branch or tag). Slashes must be URL-encoded as `%2F` in the path (e.g., `feature%2Fbranch-name`).", "schema": {"type": "string", "pattern": "^[^/]+$"}}, "Codebase_Service_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Codebase_Service_API_PatternId": {"name": "patternId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the domain pattern."}, "Codebase_Service_API_SubscriptionId": {"name": "subscriptionId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the subscription"}, "Site_Service_API_siteId": {"$ref": "#/components/parameters/Site_Service_API_SiteId"}, "Site_Service_API_codebaseId": {"$ref": "#/components/parameters/Site_Service_API_CodebaseId"}, "Site_Service_API_subscriptionId": {"$ref": "#/components/parameters/Site_Service_API_SubscriptionId"}, "Site_Service_API_environmentId": {"$ref": "#/components/parameters/Site_Service_API_EnvironmentId"}, "Site_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Site_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Site_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Site_Service_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Site_Service_API_SiteId": {"name": "siteId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "example": "12345678-1234-1234-1234-123456789012"}, "description": "Unique identifier for the site"}, "Site_Service_API_CodebaseId": {"name": "codebaseId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "example": "550e8400-e29b-41d4-a716-446655441212"}, "description": "Unique identifier for the codebase"}, "Site_Service_API_SubscriptionId": {"name": "subscriptionId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "example": "550e8300-e29b-41d4-a716-446655441212"}, "description": "Unique identifier for the subscription"}, "Site_Service_API_EnvironmentId": {"name": "environmentId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "example": "0ebce493-9d09-479d-a9a8-138a206fa687"}, "description": "Unique identifier for the environment"}, "CDN_API_SubscriptionUuid": {"name": "subscriptionUuid", "in": "path", "required": true, "description": "The unique identifier of the subscription.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_DomainName": {"name": "domainName", "in": "path", "required": true, "description": "The fully qualified domain name.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9]?(\\.[a-zA-Z]{2,})+$"}}, "CDN_API_EnvironmentId": {"name": "environmentId", "in": "path", "required": true, "description": "The unique identifier of the environment.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_RuleSetId": {"name": "ruleSetId", "in": "path", "required": true, "description": "The unique identifier of the security rule set.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_IpRuleId": {"name": "ipRuleId", "in": "path", "required": true, "description": "The unique identifier of the IP rule.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_CustomRuleId": {"name": "customRuleId", "in": "path", "required": true, "description": "The unique identifier of the custom security rule.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_RateLimitingRuleId": {"name": "rateLimitingRuleId", "in": "path", "required": true, "description": "The unique identifier of the rate limiting rule.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "CDN_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "CDN_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "CDN_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "SSH_Key_Service_API_SshKeyId": {"name": "sshKeyId", "in": "path", "description": "The SSH key's unique identifier.", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "example": "981b7910-2fe9-11e9-b210-d663bd873d93"}, "SSH_Key_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "SSH_Key_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "SSH_Key_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals (default if no operator specified)\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `label=primary` - Filter by label equals primary\n- `fingerprint=@SHA256` - Filter by fingerprint containing \"SHA256\"\n- `label=primary;fingerprint=@SHA256` - label is primary AND fingerprint contains SHA256\n- `label=primary,label=backup` - label is primary OR backup\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "label=primary;fingerprint=@SHA256"}, "SSH_Key_Service_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Failover_Service_API_environmentId": {"$ref": "#/components/parameters/Failover_Service_API_EnvironmentId"}, "Failover_Service_API_failoverGroupId": {"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}, "Failover_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Failover_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Failover_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Failover_Service_API_FailoverGroupId": {"name": "failoverGroupId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the failover group."}, "Failover_Service_API_EnvironmentId": {"name": "environmentId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the environment."}, "Tag_API_tagName": {"$ref": "#/components/parameters/Tag_API_TagName"}, "Tag_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Tag_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Tag_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Tag_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Tag_API_TagName": {"name": "tagName", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the tag."}, "Environment_Service_API_environmentId": {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, "Environment_Service_API_siteId": {"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, "Environment_Service_API_deploymentId": {"$ref": "#/components/parameters/Environment_Service_API_DeploymentId"}, "Environment_Service_API_codebaseId": {"$ref": "#/components/parameters/Environment_Service_API_CodebaseId"}, "Environment_Service_API_domainName": {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}, "Environment_Service_API_backupId": {"$ref": "#/components/parameters/Environment_Service_API_BackupId"}, "Environment_Service_API_privateNetworkId": {"$ref": "#/components/parameters/Environment_Service_API_PrivateNetworkId"}, "Environment_Service_API_patternId": {"$ref": "#/components/parameters/Environment_Service_API_PatternId"}, "Environment_Service_API_CodebaseId": {"name": "codebaseId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Codebase identifier"}, "Environment_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Environment_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Environment_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Environment_Service_API_EnvironmentId": {"name": "environmentId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the environment."}, "Environment_Service_API_SiteId": {"name": "siteId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the site."}, "Environment_Service_API_PrivateNetworkId": {"name": "privateNetworkId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Private network identifier"}, "Environment_Service_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Environment_Service_API_DomainName": {"name": "domainName", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?(\\.[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?)*$"}, "description": "The fully-qualified domain name (e.g., www.example.com)."}, "Environment_Service_API_BackupId": {"name": "backupId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Database backup identifier"}, "Environment_Service_API_DeploymentId": {"name": "deploymentId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the deployment."}, "Environment_Service_API_PatternId": {"name": "patternId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the domain pattern."}, "Federated_Authentication_API_SubscriptionId": {"name": "subscriptionId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the subscription."}, "Federated_Authentication_API_SsoDomainId": {"name": "domainId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the domain."}, "Federated_Authentication_API_IdentityProviderId": {"name": "identityProviderId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the identity provider."}, "Federated_Authentication_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Federated_Authentication_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Federated_Authentication_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Federated_Authentication_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}}, "schemas": {"Codebase_Service_API_Codebase": {"type": "object", "properties": {"id": {"type": "string", "description": "Unique identifier for the codebase"}, "label": {"type": "string", "description": "Human-readable label for the codebase"}, "region": {"type": "string", "description": "AWS region of the codebase"}, "vcs_url": {"type": "string", "format": "uri", "description": "VCS repository URL"}, "repository_id": {"type": "string", "description": "VCS repository identifier"}, "created_at": {"type": "string", "format": "date-time", "description": "Creation timestamp"}, "updated_at": {"type": "string", "format": "date-time", "description": "Last update timestamp"}, "description": {"type": "string", "description": "Description of the codebase"}, "flags": {"type": "object", "properties": {"is_active": {"type": "boolean", "description": "Whether the codebase is active"}, "is_meo": {"type": "boolean", "description": "Whether the codebase is MEO"}}, "required": ["is_active", "is_meo"], "description": "Feature flags for the codebase"}, "hash": {"type": "string", "description": "Codebase hash"}, "applications_total": {"type": "integer", "description": "Total number of applications linked to this codebase"}}, "required": ["id", "label", "region", "vcs_url", "repository_id", "created_at", "updated_at", "flags", "hash", "applications_total"]}, "Codebase_Service_API_CodebaseReference": {"type": "object", "properties": {"id": {"type": "string", "description": "Unique identifier for the reference"}, "name": {"type": "string", "description": "Name of the git reference"}, "type": {"type": "string", "enum": ["branch", "tag"], "description": "Type of the git reference"}}, "required": ["id", "name", "type"]}, "Codebase_Service_API_DomainPattern": {"type": "object", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the domain pattern."}, "pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])(?=.*\\[environment-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The domain pattern string, optionally followed by a single path segment (e.g. [site-name].[environment-name].acme.com/app). Both [site-name] and [environment-name] tokens are mandatory at codebase level. Domain rules (enforced in service layer): \u2264 200 chars excluding token placeholders, at least 2 components (must contain .), no IP addresses, no forbidden suffixes (acquia-sites.com, hosting.acquia.com), no wildcards, no leading/trailing dot or hyphen, no consecutive dots, no query string or fragment. Path rules: optional, max 255 chars, must match ^/[A-Za-z0-9._-]+$, max 1 segment. DNS label limit: 63 chars after token substitution ([site-name] \u2264 14 chars, [environment-name] \u2264 10 chars). One pattern per codebase.\n", "example": "[site-name].[environment-name].acme.com"}}, "required": ["id", "pattern"]}, "Codebase_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Codebase_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Codebase_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Codebase_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Codebase_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Codebase_Service_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Codebase_Service_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Codebase_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_Message": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Codebase_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Site_Service_API_Site": {"type": "object", "description": "A Site resource", "properties": {"id": {"type": "string", "description": "The unique identifier of the site", "pattern": "^[a-zA-Z0-9-]+$", "example": "12345678-1234-1234-1234-123456789012"}, "name": {"type": "string", "description": "The machine name of the site. Must start with a lowercase letter and contain only lowercase letters and numbers.", "minLength": 1, "maxLength": 14, "pattern": "^[a-z][a-z0-9]*$", "example": "mysite"}, "label": {"type": "string", "description": "The human-readable label of the site", "minLength": 1, "maxLength": 50, "example": "My Site 1"}, "description": {"type": "string", "description": "A description of the site", "maxLength": 512, "example": "A production site for the marketing team."}, "codebase_id": {"type": "string", "description": "The unique identifier of the codebase this site belongs to", "pattern": "^[a-zA-Z0-9-]+$", "example": "550e8400-e29b-41d4-a716-446655441210"}, "status": {"type": "string", "description": "The current lifecycle status of the site. ready indicates the site is active and operational. marked-for-deletion indicates the site has been scheduled for deletion and can still be recovered.\n", "enum": ["ready", "marked-for-deletion"], "example": "ready"}, "delete_at": {"type": "string", "format": "date-time", "description": "ISO 8601 datetime indicating when the site is scheduled for deletion. Only present when status is marked-for-deletion.", "example": "2025-06-15T00:00:00Z"}}, "required": ["id", "name", "label", "codebase_id", "status"]}, "Site_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Site_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Site_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Site_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Site_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Site_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Site_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Site_Service_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Site_Service_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Site_Service_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Site_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Site_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Site_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Site_Service_API_Message": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Site_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Site_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "CDN_API_Domain": {"type": "object", "description": "CDN domain resource.", "properties": {"domain": {"type": "string", "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9]?(\\.[a-zA-Z]{2,})+$", "description": "The fully qualified domain name."}, "subscription_uuid": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "The unique identifier of the subscription the domain belongs to."}, "environment_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "The environment identifier associated with the domain."}, "application_name": {"type": "string", "description": "The name of the application associated with the domain."}, "status": {"type": "string", "description": "The current status of the domain.", "enum": ["connecting-to-edge", "domain-validation-pending", "ready-for-dns-repointing", "configuration-failed", "configured"]}, "ownership_validation_cname": {"type": "string", "description": "The CNAME record that must be created on the domain's DNS to validate ownership."}, "bandwidth_usage_tb": {"type": "number", "format": "float", "description": "The bandwidth usage for the domain in terabytes."}, "created_at": {"type": "string", "format": "date-time", "description": "The timestamp when the domain was created."}, "updated_at": {"type": "string", "format": "date-time", "description": "The timestamp when the domain was last updated."}}, "required": ["domain", "subscription_uuid", "environment_id", "status", "application_name", "ownership_validation_cname", "bandwidth_usage_tb", "created_at", "updated_at"]}, "CDN_API_SecurityRuleSet": {"type": "object", "properties": {"id": {"type": "integer", "minimum": 1, "description": "The unique identifier of the security ruleset."}, "name": {"type": "string", "description": "The display name of the security ruleset."}, "is_enabled": {"type": "boolean", "description": "Indicates whether the security ruleset is enabled."}, "description": {"type": "string", "description": "The description of the security ruleset."}, "type": {"type": "string", "description": "The type of the security ruleset.", "enum": ["owasp", "acquia-managed"]}}, "required": ["id", "name", "is_enabled"]}, "CDN_API_IpRule": {"type": "object", "properties": {"id": {"type": "integer", "minimum": 1, "description": "The unique identifier of the IP rule."}, "display_name": {"type": "string", "description": "The display name of the IP rule."}, "action": {"type": "string", "enum": ["block", "allow"], "description": "The action applied when the rule matches."}, "description": {"type": "string", "description": "The description of the IP rule."}, "ips": {"type": "array", "description": "The IPs or CIDR blocks associated with the rule.", "items": {"type": "string", "description": "An IP address or CIDR block."}}, "created_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was created."}, "updated_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was last updated."}}, "required": ["id", "display_name", "action", "ips", "created_at", "updated_at"]}, "CDN_API_CustomRule": {"type": "object", "properties": {"id": {"type": "integer", "minimum": 1, "description": "The unique identifier of the custom security rule."}, "display_name": {"type": "string", "description": "The display name of the custom security rule."}, "action": {"type": "string", "enum": ["block", "allow", "alert"], "description": "The action applied when the rule matches."}, "priority": {"type": "integer", "minimum": 1, "description": "The priority order for the rule. Lower values are evaluated first.\nPriorities must be unique within a subscription \u2014 creating or\nupdating a rule with a priority already in use replaces the\nexisting rule at that priority.\n"}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "paths": {"type": "array", "description": "The paths the rule applies to.", "items": {"type": "string", "description": "A path pattern."}}, "mapped_domains_count": {"type": "integer", "description": "The number of domains the rule is mapped to."}, "targets": {"type": "array", "description": "Conditions that must match for the rule to fire.", "items": {"oneOf": [{"description": "Range match for IP or ASN ranges.", "type": "object", "required": ["attribute", "criteria", "value"], "additionalProperties": false, "properties": {"attribute": {"type": "string", "description": "The request attribute the rule inspects.", "enum": ["source-ip", "asn"]}, "criteria": {"type": "string", "description": "How `value` is compared against `attribute`.", "enum": ["range"]}, "value": {"type": "object", "description": "Range bounds for IP or ASN ranges.", "additionalProperties": false, "required": ["from", "to"], "properties": {"from": {"type": "string", "description": "The start of the range."}, "to": {"type": "string", "description": "The end of the range."}}}}}, {"description": "Value-list match for non-header, non-query attributes.", "type": "object", "required": ["attribute", "criteria", "value"], "additionalProperties": false, "properties": {"attribute": {"type": "string", "description": "The request attribute the rule inspects.", "enum": ["source-ip", "country", "method", "path", "asn"]}, "criteria": {"type": "string", "description": "How `value` is compared against `attribute`.", "enum": ["equals", "contains", "regex"]}, "value": {"type": "object", "description": "A list of candidate values combined with OR.", "additionalProperties": false, "required": ["values"], "properties": {"values": {"type": "array", "description": "The list of values.", "items": {"type": "string", "description": "A value."}}}}}}, {"description": "Key-value match for header or query-string attributes.", "type": "object", "required": ["attribute", "criteria", "value"], "additionalProperties": false, "properties": {"attribute": {"type": "string", "description": "The request attribute the rule inspects.", "enum": ["header", "query-string"]}, "criteria": {"type": "string", "description": "How `value` is compared against `attribute`.", "enum": ["equals", "contains", "regex"]}, "value": {"type": "object", "description": "Key-value matchers for header or query-string attributes.", "additionalProperties": false, "required": ["key_value_pairs"], "properties": {"key_value_pairs": {"type": "array", "description": "The list of key-value pairs.", "items": {"type": "object", "description": "A key-value pair.", "required": ["key", "value"], "properties": {"key": {"type": "string", "description": "The header or query-parameter name."}, "value": {"type": "string", "description": "The expected value."}}}}}}}}]}}, "created_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was created."}, "updated_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was last updated."}}, "required": ["id", "display_name", "action", "priority", "domains", "paths", "created_at", "updated_at", "targets"]}, "CDN_API_RateLimitingRule": {"type": "object", "properties": {"id": {"type": "integer", "minimum": 1, "description": "The unique identifier of the rate limiting rule."}, "display_name": {"type": "string", "description": "The display name of the rate limiting rule."}, "action": {"type": "string", "enum": ["block", "alert"], "description": "The action applied when the rule matches."}, "rate_limit_per_minute": {"type": "string", "enum": ["lenient", "moderate", "strict"], "description": "The rate limit category applied to the rule."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "created_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was created."}, "updated_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was last updated."}}, "required": ["id", "display_name", "action", "rate_limit_per_minute", "domains", "created_at", "updated_at"]}, "CDN_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "CDN_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/CDN_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/CDN_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "CDN_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "CDN_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/CDN_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/CDN_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/CDN_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "CDN_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/CDN_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "CDN_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/CDN_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "CDN_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "CDN_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "CDN_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "CDN_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "CDN_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "CDN_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "CDN_API_Message": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "CDN_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"]}, "SSH_Key_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "SSH_Key_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "SSH_Key_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}, {"properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}, {"properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}]}, "SSH_Key_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}, {"properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering."}}, "additionalProperties": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}}}]}, "SSH_Key_Service_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}, {"properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting."}}, "additionalProperties": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}}}]}, "SSH_Key_Service_API_SshKey": {"allOf": [{"type": "object", "required": ["id", "label", "public_key", "fingerprint", "created_at", "user_id"], "description": "Details an SSH key.", "properties": {"id": {"type": "string", "description": "The unique identifier of the SSH key.", "pattern": "^[a-zA-Z0-9-]+$"}, "label": {"type": "string", "description": "The human-readable key label."}, "public_key": {"type": "string", "description": "The public key.", "minLength": 64}, "fingerprint": {"type": "string", "description": "The public key fingerprint.", "pattern": "^[A-Za-z0-9:+/=.-]+$"}, "created_at": {"type": "string", "format": "date-time", "description": "The key creation date."}, "user_id": {"type": "string", "description": "The unique identifier of the user who owns this SSH key.", "pattern": "^[a-zA-Z0-9-]+$"}}}, {"$ref": "#/components/schemas/SSH_Key_Service_API_HalItem"}]}, "SSH_Key_Service_API_SshKeys": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalCollection"}, {"$ref": "#/components/schemas/SSH_Key_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/SSH_Key_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/SSH_Key_Service_API_SortedCollection"}, {"type": "object", "description": "A collection of SSH keys.", "properties": {"_embedded": {"type": "object", "description": "A collection of SSH keys matching the request parameters.", "properties": {"items": {"type": "array", "items": {"$ref": "#/components/schemas/SSH_Key_Service_API_SshKey"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "SSH_Key_Service_API_Message": {"allOf": [{"type": "object", "required": ["message"], "properties": {"message": {"type": "string", "description": "The human-friendly confirmation of the operation."}}}, {"$ref": "#/components/schemas/SSH_Key_Service_API_HalItem"}]}, "SSH_Key_Service_API_ValidationError": {"type": "object", "required": ["error", "message"], "description": "A validation error.", "properties": {"error": {"type": "string", "description": "The error summary."}, "message": {"type": "object", "description": "The validation error message keyed by its field or group name.", "additionalProperties": {"type": "string"}}}}, "SSH_Key_Service_API_Error": {"type": "object", "required": ["error", "message"], "properties": {"error": {"type": "string", "description": "The error summary."}, "message": {"type": "string", "description": "The long description for the returned error."}}}, "SSH_Key_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Failover_Service_API_FailoverGroup": {"type": "object", "properties": {"id": {"type": "string", "description": "Unique identifier for the failover group.", "example": "b2c3d4e5-f6a7-8901-bcde-f12345678901"}, "name": {"type": "string", "description": "The name of the failover group.", "example": "Primary Failover Group"}, "status": {"type": "string", "enum": ["creating", "normal", "failed-over", "failing-over", "error", "deleting", "deleted"], "description": "The current status of the failover group.", "example": "normal"}, "pairs": {"type": "array", "description": "The list of failover pairs belonging to this failover group.", "items": {"$ref": "#/components/schemas/Failover_Service_API_FailoverPair"}}}, "required": ["id", "name", "status", "pairs"]}, "Failover_Service_API_FailoverPair": {"type": "object", "properties": {"service_name": {"type": "string", "description": "The name of the service for this failover pair.", "example": "my-application-service"}, "primary_id": {"type": "string", "description": "The ID of the primary resource in the failover pair.", "example": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"}, "failover_id": {"type": "string", "description": "The UUID of the failover resource in the failover pair.", "example": "f1e2d3c4-b5a6-7890-fedc-ba9876543210"}}, "required": ["service_name", "primary_id", "failover_id"]}, "Failover_Service_API_MultiRegionFailoverStatus": {"type": "object", "properties": {"is_enabled": {"type": "boolean", "description": "Whether multi-region failover is enabled for the environment."}, "failover_group_id": {"type": "string", "description": "The identifier of the failover group associated with the environment."}, "is_traffic_failed_over": {"type": "boolean", "description": "Whether traffic has been failed over to the secondary region."}}, "required": ["is_enabled"]}, "Failover_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Failover_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Failover_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Failover_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Failover_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Failover_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Failover_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Failover_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Failover_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Failover_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Failover_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Failover_Service_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Failover_Service_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Failover_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Failover_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Failover_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Failover_Service_API_Message": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Failover_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "Failover_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Tag_API_Tag": {"type": "object", "properties": {"name": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "minLength": 1, "maxLength": 255, "description": "The name of the tag"}, "color": {"type": "string", "pattern": "^#((?:[a-f0-9]{3}){1,2})$", "minLength": 4, "maxLength": 7, "description": "The color of the tag"}}, "required": ["name", "color"]}, "Tag_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Tag_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Tag_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Tag_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Tag_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Tag_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Tag_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Tag_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Tag_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Tag_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Tag_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Tag_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Tag_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Tag_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Tag_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Tag_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Tag_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Tag_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Tag_API_Message": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Tag_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Tag_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "Environment_Service_API_SiteInstance": {"type": "object", "description": "Site Instance properties", "properties": {"site_id": {"type": "string", "description": "The unique identifier of the site", "pattern": "^[a-zA-Z0-9-]+$"}, "environment_id": {"type": "string", "description": "The unique identifier of the environment", "pattern": "^[a-zA-Z0-9-]+$"}, "status": {"type": "string", "description": "The current status of the site instance", "enum": ["active", "creating", "create-failed", "updating", "update-failed", "deleting", "deleted", "delete-failed"]}, "health_status": {"type": "object", "description": "Health status information for the site instance", "properties": {"code": {"type": "string", "description": "Health status code"}, "summary": {"type": "string", "description": "Summary of the health status"}, "details": {"type": "string", "description": "Detailed health status information"}}, "required": ["code", "summary", "details"]}, "domains": {"type": "array", "description": "List of domains associated with the site instance", "items": {"type": "string"}}, "deployment_order": {"type": ["integer", "null"], "description": "The order in which this site instance is deployed relative to others.", "example": 1}, "delete_at": {"type": ["string", "null"], "format": "date-time", "description": "The scheduled deletion date-time for this site instance, if set."}, "date_marked_for_deletion": {"type": ["string", "null"], "format": "date-time", "description": "The date-time when this site instance was marked for deletion."}, "protection_mode": {"type": ["object", "null"], "description": "The current protection mode of the site instance", "properties": {"is_enabled": {"type": "boolean", "description": "Indicates whether the protection mode is enabled for the site instance"}, "is_inherited": {"type": "boolean", "description": "Indicates whether the protection mode is inherited from the environment"}}, "required": ["is_enabled", "is_inherited"]}}, "required": ["site_id", "environment_id", "status", "health_status", "domains"]}, "Environment_Service_API_Environment": {"type": "object", "description": "Environment properties", "properties": {"id": {"type": "string", "description": "The unique identifier of the environment", "pattern": "^[a-zA-Z0-9-]+$"}, "name": {"type": "string", "description": "The machine name of the environment"}, "label": {"type": "string", "description": "The human-readable label of the environment"}, "description": {"type": "string", "description": "A description of the environment"}, "status": {"type": "string", "description": "The current status of the environment", "enum": ["normal", "allocated", "launching", "killed", "cancelled", "stopped"]}, "flags": {"type": "object", "description": "Environment configuration flags", "additionalProperties": {"type": "boolean"}}, "properties": {"type": "object", "description": "Environment PHP and server properties", "properties": {"version": {"type": "string", "description": "PHP version"}, "max_execution_time": {"type": "integer", "description": "Maximum execution time in seconds"}, "memory_limit": {"type": "integer", "description": "Memory limit in MB"}, "apcu": {"type": "integer", "description": "APCu cache size in MB"}, "client_max_body_size": {"type": "integer", "description": "Maximum client body size in MB"}, "max_input_vars": {"type": "integer", "description": "Maximum number of input variables"}, "max_post_size": {"type": "integer", "description": "Maximum POST size in MB"}, "memcached_limit": {"type": "integer", "description": "Memcached limit in MB"}, "upload_max_filesize": {"type": "integer", "description": "Maximum upload file size in MB"}, "operating_system": {"type": "string", "description": "Operating system codename"}}}, "reference": {"type": "string", "description": "The code reference (branch, tag, or commit) deployed to this environment"}, "code_switch_status": {"type": "string", "description": "The status of the Switch Code action", "enum": ["IDLE", "IN_PROGRESS"]}, "ssh_url": {"type": "string", "format": "uri", "description": "The SSH connection string for accessing this environment"}}, "required": ["id", "name", "label", "status", "flags", "properties", "reference", "code_switch_status", "ssh_url"]}, "Environment_Service_API_EmbeddedCodebase": {"type": "object", "description": "Embedded codebase resource", "properties": {"id": {"type": "string", "description": "The unique identifier of the codebase"}}, "required": ["id"]}, "Environment_Service_API_Deployment": {"type": "object", "description": "Deployment properties", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the deployment."}, "environment_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Identifier of the environment this deployment belongs to."}, "status": {"type": "string", "description": "Current status of the deployment.", "enum": ["waiting", "received", "started", "done", "failed", "error", "killed"]}, "code_reference": {"type": "string", "description": "The code reference (e.g. branch or tag) deployed."}, "run_hooks": {"type": "boolean", "description": "Whether deployment hooks were run."}, "hooks_argument": {"type": ["string", "null"], "description": "Additional arguments passed to deployment hooks."}, "created_at": {"type": "string", "format": "date-time", "description": "Timestamp when the deployment was created."}, "started_at": {"type": ["string", "null"], "format": "date-time", "description": "Timestamp when the deployment started."}, "completed_at": {"type": ["string", "null"], "format": "date-time", "description": "Timestamp when the deployment completed."}, "sender_id": {"type": ["string", "null"], "description": "Identifier of the user or system that initiated the deployment."}, "logs": {"type": ["string", "null"], "description": "Deployment log output."}}, "required": ["id", "environment_id", "status", "code_reference", "run_hooks", "created_at"]}, "Environment_Service_API_CodeDeploy": {"type": "object", "properties": {"concurrency": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Maximum number of concurrent code deploys allowed for the environment."}}, "required": ["concurrency"]}, "Environment_Service_API_Domain": {"type": "object", "description": "Domain properties", "properties": {"name": {"type": "string", "description": "The domain name."}, "is_managed": {"type": "boolean", "description": "Whether the domain is managed by Acquia."}}, "required": ["name", "is_managed"]}, "Environment_Service_API_DomainStatus": {"type": "object", "description": "Domain DNS status properties", "properties": {"hostname": {"type": "string", "description": "The domain name."}, "site_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Identifier of the site this domain belongs to."}, "environment_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Identifier of the environment this domain belongs to."}, "ip_addresses": {"type": "array", "description": "List of IP addresses resolving for this domain.", "items": {"type": "string"}}, "cnames": {"type": "array", "description": "List of CNAME records resolving for this domain.", "items": {"type": "string"}}, "flags": {"type": "object", "description": "Status flags for the domain.", "properties": {"default": {"type": "boolean", "description": "Whether this is the default domain."}, "active": {"type": "boolean", "description": "Whether the domain is active."}, "dns_resolves": {"type": "boolean", "description": "Whether the domain DNS resolves correctly."}, "acquia_hosted": {"type": "boolean", "description": "Whether the domain is hosted on Acquia infrastructure."}}, "required": ["default", "active", "dns_resolves", "acquia_hosted"]}}, "required": ["hostname", "site_id", "environment_id", "ip_addresses", "cnames", "flags"]}, "Environment_Service_API_Database": {"type": "object", "description": "Database properties", "properties": {"database_name": {"type": "string", "description": "The name of the database."}, "database_role": {"type": "string", "description": "The role of the database (e.g. the site username)."}}, "required": ["database_name", "database_role"]}, "Environment_Service_API_DatabaseConnection": {"type": "object", "description": "Database connection credential properties", "properties": {"db_host": {"type": "string", "description": "The database host."}, "name": {"type": "string", "description": "The database name."}, "password": {"type": "string", "description": "The database password."}, "user_name": {"type": "string", "description": "The database username."}, "ssh_host": {"type": "string", "description": "The SSH host for tunneling to the database."}}, "required": ["db_host", "name", "password", "user_name", "ssh_host"]}, "Environment_Service_API_DatabaseBackup": {"type": "object", "description": "Database backup properties", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the database backup."}, "database_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Identifier of the database this backup belongs to."}, "created_at": {"type": "string", "format": "date-time", "description": "Timestamp when the backup was created."}, "type": {"type": "string", "enum": ["DAILY", "ON_DEMAND"], "description": "The type of backup."}}, "required": ["id", "database_id", "created_at", "type"]}, "Environment_Service_API_EgressIp": {"type": "object", "description": "Egress IP properties", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the egress IP."}, "status": {"type": "string", "description": "Current status of the egress IP."}, "ipv4": {"type": "string", "description": "The IPv4 address."}, "ipv6": {"type": ["string", "null"], "description": "The IPv6 address, if assigned."}, "flags": {"type": "object", "description": "Status flags for the egress IP.", "additionalProperties": {"type": "boolean"}}}, "required": ["id", "status", "ipv4", "flags"]}, "Environment_Service_API_TrustedProxies": {"type": "object", "description": "Trusted proxy configuration properties", "properties": {"cidrs_ipv4": {"type": "array", "description": "List of trusted IPv4 CIDR blocks.", "items": {"type": "string"}}, "cidrs_ipv6": {"type": "array", "description": "List of trusted IPv6 CIDR blocks.", "items": {"type": "string"}}, "associated_cdns": {"type": "object", "description": "Map of CDN configurations associated with this environment, keyed by CDN name.", "additionalProperties": {"type": "object", "properties": {"label": {"type": "string", "description": "Display label for the CDN."}, "is_enabled": {"type": "boolean", "description": "Whether the CDN is enabled."}}, "required": ["label", "is_enabled"]}}}, "required": ["cidrs_ipv4", "cidrs_ipv6", "associated_cdns"]}, "Environment_Service_API_PrivateNetwork": {"type": "object", "description": "Private network reference properties", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the private network."}, "label": {"type": ["string", "null"], "description": "Human-readable label for the private network."}}, "required": ["id"]}, "Environment_Service_API_DomainPattern": {"type": "object", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the domain pattern."}, "pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The domain pattern string, optionally followed by a single path segment (e.g. [site-name].acme.com/app). The [site-name] token is mandatory; [environment-name] is optional at environment level. Domain rules (enforced in service layer): \u2264 200 chars excluding token placeholders, at least 2 components (must contain .), no IP addresses, no forbidden suffixes (acquia-sites.com, hosting.acquia.com), no wildcards, no leading/trailing dot or hyphen, no consecutive dots, no query string or fragment. Path rules: optional, max 255 chars, must match ^/[A-Za-z0-9._-]+$, max 1 segment. DNS label limit: 63 chars after token substitution ([site-name] \u2264 14 chars). One pattern per environment.\n", "example": "[site-name].acme.com"}}, "required": ["id", "pattern"]}, "Environment_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Environment_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Environment_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Environment_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Environment_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Environment_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Environment_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Environment_Service_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Environment_Service_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Environment_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Environment_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Environment_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Environment_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Environment_Service_API_Message": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Environment_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "Environment_Service_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Federated_Authentication_API_IdentityProvider": {"type": "object", "properties": {"identity_provider_id": {"type": "string", "description": "Unique identifier for the identity provider."}, "label": {"type": "string", "description": "The name of the Identity Provider."}, "subscription_id": {"type": "string", "description": "Unique identifier for the subscription that the Identity Provider belongs to."}, "idp_entity_id": {"type": "string", "format": "uri", "description": "The Identity Provider Entity ID."}, "sp_entity_id": {"type": "string", "format": "uri", "description": "The Service Provider Entity ID."}, "sso_url": {"type": "string", "format": "uri", "description": "The Single Sign-On URL for the Identity Provider."}, "certificate": {"type": "string", "description": "The X.509 certificate used for SAML authentication."}, "created_at": {"type": "string", "format": "date-time", "description": "Timestamp when the Identity Provider was created."}}, "required": ["identity_provider_id", "label", "subscription_id", "idp_entity_id", "sp_entity_id", "sso_url", "certificate", "created_at"]}, "Federated_Authentication_API_SsoDomain": {"type": "object", "properties": {"domain_id": {"type": "string", "description": "Unique identifier for the domain."}, "domain": {"type": "string", "pattern": "^[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?(\\.[a-zA-Z]{2,})+$", "description": "The domain name (e.g., \"acme.com\")."}, "subscription_id": {"type": "string", "description": "Unique identifier for the subscription that the domain belongs to."}, "health": {"type": "object", "description": "The overall verification health of the domain. Uses the same code semantics as the platform email domain-verification system: `200` verified, `202` verification pending or in progress, `404` DNS record not found or could not be validated.", "properties": {"code": {"type": "string", "enum": ["200", "202", "404"], "description": "Machine-readable verification status code. `200` \u2014 verified. `202` \u2014 verification pending or in progress; retry after propagation. `404` \u2014 DNS TXT record not found or does not match expected value."}, "summary": {"type": "string", "description": "Short human-readable label for the verification state (e.g., \"Verified\", \"Verification pending\", \"Missing DNS record\")."}, "details": {"type": "string", "description": "Actionable explanation of the current state. For `404`, describes what was checked and what the customer should do next."}}, "required": ["code", "summary", "details"]}, "verification_record": {"type": "object", "description": "DNS TXT record the customer must publish to verify domain ownership.", "properties": {"type": {"type": "string", "const": "TXT", "description": "DNS record type."}, "host": {"type": "string", "description": "DNS record host name."}, "value": {"type": "string", "description": "Expected DNS record value."}, "health": {"type": "object", "description": "Verification health specific to this DNS record. Anchors the failure reason to the exact record the customer needs to fix, matching the per-record health pattern used in platform email domain verification.", "properties": {"code": {"type": "string", "enum": ["200", "202", "404"], "description": "`200` \u2014 record found and value matches. `202` \u2014 check in progress. `404` \u2014 record not found or value does not match."}, "summary": {"type": "string", "description": "Short human-readable label for this record's verification state."}, "details": {"type": "string", "description": "Actionable explanation; for `404`, states what was checked and what to fix."}}, "required": ["code", "summary", "details"]}}, "required": ["type", "host", "value", "health"]}, "verified_at": {"type": "string", "format": "date-time", "description": "Timestamp when the domain was successfully verified. Present only when `health.code` is `200`."}}, "required": ["domain_id", "domain", "subscription_id", "health", "verification_record"]}, "Federated_Authentication_API_SsoPolicy": {"type": "object", "description": "SSO policy that enforces an Identity Provider for specific domains.", "properties": {"status": {"type": "string", "enum": ["enabled", "disabled"], "default": "disabled", "description": "The status of the SSO policy. When enabled, the policy enforces SSO for the specified domains. Defaults to disabled on creation."}, "_embedded": {"type": "object", "description": "Embedded resources for the SSO policy.", "properties": {"domains": {"type": "array", "description": "The SSO domains enforced by this policy, each with a self link back to the authoritative SsoDomain resource.", "items": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_SsoDomain"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}}}, "required": ["domains"]}}, "required": ["status", "_embedded"]}, "Federated_Authentication_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Federated_Authentication_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Federated_Authentication_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Federated_Authentication_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Federated_Authentication_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Federated_Authentication_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Federated_Authentication_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Federated_Authentication_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Federated_Authentication_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Federated_Authentication_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Federated_Authentication_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Federated_Authentication_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Federated_Authentication_API_Message": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Federated_Authentication_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}}, "responses": {"Codebase_Service_API_Codebase": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Codebase"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}, "example": {"id": "a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4", "label": "my-codebase", "region": "us-east-1", "vcs_url": "https://github.com/acquia/my-codebase.git", "repository_id": "12345678", "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-15T10:30:00Z", "description": "Main production codebase", "flags": {"is_active": true, "is_meo": false}, "hash": "abc123def456", "applications_total": 3, "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}}}}}, "Codebase_Service_API_CodebaseCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_FilteredCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Codebase"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"codebase_collection": {"summary": "Codebase collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases?limit=10&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/codebases?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases?limit=10{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/codebases?limit=10&offset=0{&filter}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 10, "offset": 0}, "_embedded": {"items": [{"id": "a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4", "label": "my-codebase", "region": "us-east-1", "vcs_url": "https://github.com/acquia/my-codebase.git", "repository_id": "12345678", "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-15T10:30:00Z", "description": "Main production codebase", "flags": {"is_active": true, "is_meo": false}, "hash": "abc123def456", "applications_total": 3, "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}}]}}}}}}}, "Codebase_Service_API_CodebaseReference": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_CodebaseReference"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}, "example": {"id": "ref-123", "name": "main", "type": "branch", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references/main"}}}}}}, "Codebase_Service_API_CodebaseReferenceCollection": {"description": "A list of git references for the codebase", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_CodebaseReference"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references?limit=10&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references?limit=10{&offset}", "templated": true}}, "count": 2, "total": 2, "pagination": {"total": 2, "limit": 10, "offset": 0}, "_embedded": {"items": [{"id": "ref-123", "name": "main", "type": "branch", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references/main"}}}, {"id": "ref-456", "name": "v1.0.0", "type": "tag", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references/v1.0.0"}}}]}}}}}, "Codebase_Service_API_DomainPattern": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_DomainPattern"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}, "example": {"id": "22222222-2222-2222-2222-222222222222", "pattern": "[site-name].[environment-name].acme.com", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}}}}, "links": {"self": {"operationId": "findDomainPatternByCodebaseIdAndPatternId", "parameters": {"codebaseId": "$request.path.codebaseId", "patternId": "$request.path.patternId"}}}}, "Codebase_Service_API_DomainPatternCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_DomainPattern"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"domain_pattern_collection": {"summary": "Domain pattern collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns"}, "limit": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?limit=25{&offset}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?limit=25&offset=0{&sort}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 25, "offset": 0}, "_embedded": {"items": [{"id": "22222222-2222-2222-2222-222222222222", "pattern": "[site-name].[environment-name].acme.com", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}}]}}}, "domain_pattern_collection_empty": {"summary": "Empty domain pattern collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns"}, "limit": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?limit=25{&offset}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?limit=25&offset=0{&sort}", "templated": true}}, "count": 0, "total": 0, "pagination": {"total": 0, "limit": 25, "offset": 0}, "_embedded": {"items": []}}}}}}}, "Codebase_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Codebase_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Codebase_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Codebase_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Codebase_Service_API_SubscriptionCodebaseCollection": {"description": "A list of codebases for the subscription", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_FilteredCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Codebase"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"subscription_codebase_collection": {"summary": "Subscription codebase collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/sub-12345/codebases?limit=10&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/sub-12345/codebases?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/sub-12345/codebases?limit=10{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/sub-12345/codebases?limit=10&offset=0{&filter}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 10, "offset": 0}, "_embedded": {"items": [{"id": "a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4", "label": "my-codebase", "region": "us-east-1", "vcs_url": "https://github.com/acquia/my-codebase.git", "repository_id": "12345678", "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-15T10:30:00Z", "description": "Main production codebase", "flags": {"is_active": true, "is_meo": false}, "hash": "abc123def456", "applications_total": 3, "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}}]}}}}}}}, "Codebase_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Codebase_Service_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Site_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Site_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Site_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Site_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Site_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Site_Service_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Site_Service_API_Site": {"description": "Site details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Site"}, {"$ref": "#/components/schemas/Site_Service_API_HalItem"}, {"type": "object", "properties": {"_links": {"properties": {"self": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}, "codebase": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/f1a2b3c4-d5e6-7890-abcd-ef1234567890"}, "codebase": {"href": "https://api.acquia.com/v3/codebases/a9b8c7d6-e5f4-3210-abcd-ef9876543210"}}, "id": "f1a2b3c4-d5e6-7890-abcd-ef1234567890", "name": "mysite", "label": "My Site", "description": "This is a description of my site.", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210", "status": "ready"}}}, "links": {"self": {"operationId": "findSiteBySiteId", "parameters": {"siteId": "$request.path.siteId"}}}}, "Site_Service_API_SiteCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Site_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Site_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/Site_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Site"}, {"$ref": "#/components/schemas/Site_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"site_collection": {"summary": "Site collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/sites?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/sites?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/sites?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/sites?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/sites?limit=2&offset=2"}}, "count": 2, "total": 4, "pagination": {"total": 4, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "f1a2b3c4-d5e6-7890-abcd-ef1234567890", "name": "mysite", "label": "My Site", "description": "A description of my site.", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210", "status": "ready", "_links": {"self": {"href": "https://api.acquia.com/v3/sites/f1a2b3c4-d5e6-7890-abcd-ef1234567890"}}}, {"id": "e2b3c4d5-f6a7-8901-bcde-f12345678901", "name": "anothersite", "label": "Another Site", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210", "status": "marked-for-deletion", "delete_at": "2025-01-01T00:00:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sites/e2b3c4d5-f6a7-8901-bcde-f12345678901"}}}]}}}}}}}, "CDN_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "CDN_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "CDN_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "CDN_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "CDN_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "CDN_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "CDN_API_DomainCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"$ref": "#/components/schemas/CDN_API_FilteredCollection"}, {"$ref": "#/components/schemas/CDN_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Domain"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"domains_response": {"summary": "Domain collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2&offset=2"}}, "count": 2, "total": 50, "pagination": {"total": 50, "limit": 2, "offset": 0}, "_embedded": {"items": [{"domain": "example.com", "subscription_uuid": "12345678-1234-1234-1234-123456789012", "environment_id": "0c3f0f5f-5727-4838-9459-2d90ee1cf7c1", "application_name": "my-application", "status": "configured", "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-20T15:45:00Z", "ownership_validation_cname": "_acme-challenge.example.com", "bandwidth_usage_tb": 1.25, "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/example.com"}}}, {"domain": "test.example.org", "subscription_uuid": "12345678-1234-1234-1234-123456789012", "environment_id": "1d4f1f6f-6838-5949-a560-3e01ff2cf8d2", "application_name": "test-application", "status": "connecting-to-edge", "created_at": "2024-01-18T08:15:00Z", "ownership_validation_cname": "_acme-challenge.example.com", "bandwidth_usage_tb": 1.25, "updated_at": "2024-01-18T08:15:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/test.example.org"}}}]}}}}}}}, "CDN_API_Domain": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Domain"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"domain": "example.com", "subscription_uuid": "12345678-1234-1234-1234-123456789012", "environment_id": "0c3f0f5f-5727-4838-9459-2d90ee1cf7c1", "application_name": "my-application", "status": "configured", "ownership_validation_cname": "_acme-challenge.example.com", "bandwidth_usage_tb": 1.25, "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-20T15:45:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/example.com"}}}}}, "links": {"self": {"operationId": "findDomainBySubscriptionUuidAndDomainName", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "domainName": "$request.path.domainName"}}}}, "CDN_API_DomainCdnProvisioningAccepted": {"description": "Accepted - Provisioning in progress", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain provisioning has been started.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/example.com"}}, "message": "The domain provisioning has been started."}}}}, "CDN_API_DomainCdnDeprovisioningAccepted": {"description": "Accepted - Deprovisioning in progress", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain deprovisioning has been started.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/example.com"}}, "message": "The domain deprovisioning has been started."}}}}, "CDN_API_PurgeAccepted": {"description": "Accepted - Purge request submitted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The purge request has been submitted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/0c3f0f5f-5727-4838-9459-2d90ee1cf7c1/actions/purge-cdn"}}, "message": "The purge request has been submitted."}}}}, "CDN_API_SecurityRuleSet": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_SecurityRuleSet"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"id": 1, "name": "OWASP Top 10", "is_enabled": true, "description": "OWASP Top 10 security ruleset", "type": "owasp", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets/1"}}}}}, "links": {"self": {"operationId": "findSecurityRuleSetBySubscriptionUuidAndRuleSetId", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "ruleSetId": "$request.path.ruleSetId"}}}}, "CDN_API_SecurityRuleSetCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_SecurityRuleSet"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"security_rule_sets_response": {"summary": "Security rulesets collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets?limit=2{&offset}", "templated": true}}, "count": 2, "total": 5, "pagination": {"total": 5, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": 123, "name": "OWASP Core Ruleset", "is_enabled": true, "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets/123"}}}, {"id": 456, "name": "Bot Protection", "is_enabled": false, "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets/456"}}}]}}}}}}}, "CDN_API_SecurityRuleSetUpdated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The security ruleset has been updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets/123"}}, "message": "The security ruleset has been updated."}}}}, "CDN_API_IpRule": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_IpRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"id": 101, "display_name": "Block office VPN", "action": "allow", "description": "Allow traffic from the office VPN", "ips": ["203.0.113.0/24"], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}}}}, "links": {"self": {"operationId": "findIpRuleBySubscriptionUuidAndIpRuleId", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "ipRuleId": "$request.path.ipRuleId"}}}}, "CDN_API_IpRuleCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"$ref": "#/components/schemas/CDN_API_FilteredCollection"}, {"$ref": "#/components/schemas/CDN_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_IpRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"ip_rules_response": {"summary": "IP rules collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?offset=2&limit=2"}}, "count": 2, "total": 5, "pagination": {"total": 5, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": 101, "display_name": "Block office IPs", "action": "block", "description": "Blocks office IP ranges.", "ips": ["192.0.2.10", "198.51.100.0/24"], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}}, {"id": 102, "display_name": "Allow support", "action": "allow", "description": "Allows support traffic.", "ips": ["203.0.113.5"], "created_at": "2026-05-02T08:15:00Z", "updated_at": "2026-05-11T13:45:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/102"}}}]}}}}}}}, "CDN_API_IpRuleCreated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The IP rule has been created.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}, "message": "The IP rule has been created."}}}}, "CDN_API_IpRuleUpdated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The IP rule has been updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}, "message": "The IP rule has been updated."}}}}, "CDN_API_IpRuleDeleted": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The IP rule has been deleted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}, "message": "The IP rule has been deleted."}}}}, "CDN_API_CustomRuleCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_CustomRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"custom_rules_response": {"summary": "Custom rules collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules?limit=2{&offset}", "templated": true}}, "count": 2, "total": 5, "pagination": {"total": 5, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": 301, "display_name": "Block bad bots", "action": "block", "priority": 1, "domains": ["example.com"], "paths": ["/api/*"], "targets": [{"attribute": "source-ip", "criteria": "range", "value": {"from": "10.0.0.0", "to": "10.0.0.255"}}], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}}, {"id": 302, "display_name": "Alert login scans", "action": "alert", "priority": 2, "domains": ["shop.example.com"], "paths": ["/login"], "targets": [{"attribute": "path", "criteria": "equals", "value": {"values": ["/login"]}}], "created_at": "2026-05-02T08:15:00Z", "updated_at": "2026-05-11T13:45:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/302"}}}]}}}}}}}, "CDN_API_CustomRule": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_CustomRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"id": 301, "display_name": "Block bad bots", "action": "block", "priority": 1, "domains": ["example.com"], "paths": ["/api/*"], "targets": [{"attribute": "source-ip", "criteria": "range", "value": {"from": "10.0.0.0", "to": "10.0.0.255"}}, {"attribute": "header", "criteria": "equals", "value": {"key_value_pairs": [{"key": "User-Agent", "value": "BadBot/1.0"}]}}], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}}}}, "links": {"self": {"operationId": "findCustomRuleBySubscriptionUuidAndCustomRuleId", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "customRuleId": "$request.path.customRuleId"}}}}, "CDN_API_CustomRuleCreated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The custom security rule has been created.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}, "message": "The custom security rule has been created."}}}}, "CDN_API_CustomRuleDeleted": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The custom security rule has been deleted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}, "message": "The custom security rule has been deleted."}}}}, "CDN_API_RateLimitingRuleCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"$ref": "#/components/schemas/CDN_API_FilteredCollection"}, {"$ref": "#/components/schemas/CDN_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_RateLimitingRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"rate_limiting_rules_response": {"summary": "Rate limiting rules collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2&offset=2"}}, "count": 2, "total": 4, "pagination": {"total": 4, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": 501, "display_name": "Rate Rule 1", "action": "alert", "rate_limit_per_minute": "lenient", "domains": ["example.com"], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}}, {"id": 502, "display_name": "Rate Rule 2", "action": "block", "rate_limit_per_minute": "strict", "domains": ["shop.example.com"], "created_at": "2026-05-02T08:15:00Z", "updated_at": "2026-05-11T13:45:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/502"}}}]}}}}}}}, "CDN_API_RateLimitingRule": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_RateLimitingRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"id": 501, "display_name": "Rate Rule 1", "action": "alert", "rate_limit_per_minute": "lenient", "domains": ["example.com"], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}}}}, "links": {"self": {"operationId": "findRateLimitingRuleBySubscriptionUuidAndRateLimitingRuleId", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "rateLimitingRuleId": "$request.path.rateLimitingRuleId"}}}}, "CDN_API_RateLimitingRuleCreated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The rate limiting rule has been created.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}, "message": "The rate limiting rule has been created."}}}}, "CDN_API_RateLimitingRuleUpdated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The rate limiting rule has been updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}, "message": "The rate limiting rule has been updated."}}}}, "CDN_API_RateLimitingRuleDeleted": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The rate limiting rule has been deleted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}, "message": "The rate limiting rule has been deleted."}}}}, "CDN_API_CustomRuleUpdated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The custom security rule has been updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}, "message": "The custom security rule has been updated."}}}}, "SSH_Key_Service_API_SshKeyCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_SshKeys"}, "examples": {"ssh_keys": {"summary": "SSH key collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/ssh-keys?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2&offset=2"}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "1acbb1a5-e864-4b8e-a3f9-b1ed462afd25", "label": "primary", "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQChwPHzTTDKDpSbpa2+d22LcbQmsw92eLsUK3Fmei1fiGDkd34NsYCN8m7lsi3NbvdMS83CtPQPWiCveYPzFs1/hHc4PYj8opD2CNnr5iWVVbyaulCYHCgVv4aB/ojcexg8q483A4xJeF15TiCr/gu34rK6ucTvC/tn/rCwJBudczvEwt0klqYwv8Cl/ytaQboSuem5KgSjO3lMrb6CWtfSNhE43ZOw+UBFBqxIninN868vGMkIv9VY34Pwj54rPn/ItQd6Ef4B0KHHaGmzK0vfP+AK7FxNMoHnj3iYT33KZNqtDozdn5tYyH/bThPebEtgqUn+/w5l6wZIC/8zzvls/127ngHk+jNa0PlNyS2TxhPUK4NaPHIEnnrlp07JEYC4ImcBjaYCWAdcTcUkcJjwZQkN4bGmyO9cjICH98SdLD/HxqzTHeaYDbAX/Hu9HfaBb5dXLWsjw3Xc6hoVnUUZbMQyfgb0KgxDLh92eNGxJkpZiL0VDNOWCxDWsNpzwhLNkLqCvI6lyxiLaUzvJAk6dPaRhExmCbU1lDO2eR0FdSwC1TEhJOT9eDIK1r2hztZKs2oa5FNFfB/IFHVWasVFC9N2h/r/egB5zsRxC9MqBLRBq95NBxaRSFng6ML5WZSw41Qi4C/JWVm89rdj2WqScDHYyAdwyyppWU4T5c9Fmw== example@example.com", "fingerprint": "SHA256:7a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8g9h0i1j2k3l4m5n6o7p8q9r0s1", "created_at": "2024-10-01T12:30:00Z", "user_id": "a47ac10b-58cc-4372-a567-0e02b2c3d479", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/1acbb1a5-e864-4b8e-a3f9-b1ed462afd25"}}}, {"id": "2bcbb1a5-e864-4b8e-a3f9-b1ed462afd26", "label": "backup", "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFf2T1I1d8T1B9Q1b8pS6m2xvY3i5q8sNnU5oQwY5vS9 example@example.com", "fingerprint": "SHA256:9b8c7d6e5f4a3b2c1d0e9f8a7b6c5d4e3f2a1b0c9d8e7f6a5b4c3d2e1f0a9b8", "created_at": "2024-10-02T09:15:00Z", "user_id": "b58bd21c-69dd-5483-b678-1f13c3d4e580", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/2bcbb1a5-e864-4b8e-a3f9-b1ed462afd26"}}}]}}}}}}}, "SSH_Key_Service_API_SshKey": {"description": "OK", "content": {"application/hal+json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_SshKey"}, "example": {"id": "1acbb1a5-e864-4b8e-a3f9-b1ed462afd25", "label": "primary", "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQChwPHzTTDKDpSbpa2+d22LcbQmsw92eLsUK3Fmei1fiGDkd34NsYCN8m7lsi3NbvdMS83CtPQPWiCveYPzFs1/hHc4PYj8opD2CNnr5iWVVbyaulCYHCgVv4aB/ojcexg8q483A4xJeF15TiCr/gu34rK6ucTvC/tn/rCwJBudczvEwt0klqYwv8Cl/ytaQboSuem5KgSjO3lMrb6CWtfSNhE43ZOw+UBFBqxIninN868vGMkIv9VY34Pwj54rPn/ItQd6Ef4B0KHHaGmzK0vfP+AK7FxNMoHnj3iYT33KZNqtDozdn5tYyH/bThPebEtgqUn+/w5l6wZIC/8zzvls/127ngHk+jNa0PlNyS2TxhPUK4NaPHIEnnrlp07JEYC4ImcBjaYCWAdcTcUkcJjwZQkN4bGmyO9cjICH98SdLD/HxqzTHeaYDbAX/Hu9HfaBb5dXLWsjw3Xc6hoVnUUZbMQyfgb0KgxDLh92eNGxJkpZiL0VDNOWCxDWsNpzwhLNkLqCvI6lyxiLaUzvJAk6dPaRhExmCbU1lDO2eR0FdSwC1TEhJOT9eDIK1r2hztZKs2oa5FNFfB/IFHVWasVFC9N2h/r/egB5zsRxC9MqBLRBq95NBxaRSFng6ML5WZSw41Qi4C/JWVm89rdj2WqScDHYyAdwyyppWU4T5c9Fmw== example@example.com", "fingerprint": "SHA256:7a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8g9h0i1j2k3l4m5n6o7p8q9r0s1", "created_at": "2024-10-01T12:30:00Z", "user_id": "a47ac10b-58cc-4372-a567-0e02b2c3d479", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/1acbb1a5-e864-4b8e-a3f9-b1ed462afd25"}}}}}, "links": {"self": {"operationId": "findSshKeyBySshKeyId", "parameters": {"sshKeyId": "$request.path.sshKeyId"}}}}, "SSH_Key_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "SSH_Key_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "SSH_Key_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "SSH_Key_Service_API_ValidationError": {"description": "Bad Request - Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required."}}}}}, "SSH_Key_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "SSH_Key_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Failover_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Failover_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Failover_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Failover_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Failover_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Failover_Service_API_FailoverGroupCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Failover_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Failover_Service_API_FilteredCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_FailoverGroup"}, {"$ref": "#/components/schemas/Failover_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"failover_group_collection": {"summary": "Failover group collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/failover-groups?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/failover-groups?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/failover-groups?limit=2&offset=0{&filter}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901", "name": "Primary Failover Group", "status": "normal", "pairs": [{"service_name": "my-application-service", "primary_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "failover_id": "f1e2d3c4-b5a6-7890-fedc-ba9876543210"}], "_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}}]}}}}}}}, "Failover_Service_API_FailoverGroup": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_FailoverGroup"}, {"$ref": "#/components/schemas/Failover_Service_API_HalItem"}]}, "example": {"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901", "name": "Primary Failover Group", "status": "normal", "pairs": [{"service_name": "my-application-service", "primary_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "failover_id": "f1e2d3c4-b5a6-7890-fedc-ba9876543210"}], "_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}}}}, "links": {"self": {"operationId": "findFailoverGroupByFailoverGroupId", "parameters": {"failoverGroupId": "$request.path.failoverGroupId"}}}}, "Failover_Service_API_MultiRegionFailoverStatus": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_MultiRegionFailoverStatus"}, {"$ref": "#/components/schemas/Failover_Service_API_HalItem"}]}, "example": {"is_enabled": true, "failover_group_id": "b2c3d4e5-f6a7-8901-bcde-f12345678901", "is_traffic_failed_over": false, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/a1b2c3d4-e5f6-7890-abcd-ef1234567890/multi-region-failover"}}}}}, "links": {"self": {"operationId": "findMultiRegionFailoverByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Failover_Service_API_CreateFailoverGroupResponse": {"description": "Failover group creation initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group creation has been initiated.", "description": "Confirmation message that the failover group creation has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group creation has been initiated."}}}}, "Failover_Service_API_DeleteFailoverGroupResponse": {"description": "Failover group deletion initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group deletion has been initiated.", "description": "Confirmation message that the failover group deletion has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group deletion has been initiated."}}}}, "Failover_Service_API_FailoverGroupFailoverResponse": {"description": "Failover group failover initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group failover initiated.", "description": "Confirmation message that the failover group failover has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group failover initiated."}}}}, "Failover_Service_API_FailoverGroupRevertFailoverResponse": {"description": "Failover group revert failover initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group revert failover initiated.", "description": "Confirmation message that the failover group revert failover has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group revert failover initiated."}}}}, "Failover_Service_API_FailoverGroupSyncResponse": {"description": "Failover group sync initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group sync initiated.", "description": "Confirmation message that the failover group sync has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group sync initiated."}}}}, "Failover_Service_API_SaveMultiRegionFailoverResponse": {"description": "Multi-region failover enable initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Multi-region failover enable has been initiated.", "description": "Confirmation message that multi-region failover enable has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/a1b2c3d4-e5f6-7890-abcd-ef1234567890/multi-region-failover"}}, "message": "Multi-region failover enable has been initiated."}}}}, "Failover_Service_API_DeleteMultiRegionFailoverResponse": {"description": "Multi-region failover disable initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Multi-region failover disable has been initiated.", "description": "Confirmation message that multi-region failover disable has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/a1b2c3d4-e5f6-7890-abcd-ef1234567890/multi-region-failover"}}, "message": "Multi-region failover disable has been initiated."}}}}, "Failover_Service_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Tag_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Tag_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Tag_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Tag_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Tag_API_TagCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalCollection"}, {"$ref": "#/components/schemas/Tag_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Tag_API_FilteredCollection"}, {"$ref": "#/components/schemas/Tag_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Tag"}, {"$ref": "#/components/schemas/Tag_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"tag_response": {"summary": "Tag collection with pagination", "value": {"_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2&offset=2"}, "limit": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?offset=2{&limit}", "templated": true}, "offset": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2{&offset}", "templated": true}, "filter": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2&offset=2{&filter}", "templated": true}, "sort": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2&offset=2{&sort}", "templated": true}, "prev": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2&offset=0"}, "next": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?offset=4&limit=2"}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"name": "tag-1", "color": "#ffffff", "_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-1"}}}, {"name": "tag-2", "color": "#000000", "_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-2"}}}]}}}}}}}, "Tag_API_Tag": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Tag"}, {"$ref": "#/components/schemas/Tag_API_HalItem"}]}, "example": {"name": "tag-1", "color": "#ffffff", "_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-1"}}}}}, "links": {"self": {"operationId": "findTagByTagName", "parameters": {"tagName": "$request.path.tagName"}}}}, "Tag_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Tag_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Environment_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Environment_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Environment_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Environment_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Environment_Service_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Environment_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Environment_Service_API_DeploymentCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Deployment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"deployment_response": {"summary": "Deployment collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=2"}, "limit": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?offset=2{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=2{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=2{&sort}", "templated": true}, "prev": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=0"}, "next": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=4"}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "status": "done", "code_reference": "tags/v1.0.0", "run_hooks": true, "hooks_argument": null, "sender_id": null, "created_at": "2025-04-01T13:01:06.603Z", "started_at": "2025-04-01T13:01:10.123Z", "completed_at": "2025-04-01T13:05:00.000Z", "_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}, "environment": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}}, {"id": "f1dae0f8-67c7-5d1e-cbe1-1f7604f77de4", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "status": "failed", "code_reference": "tags/v0.9.0", "run_hooks": false, "hooks_argument": null, "sender_id": null, "created_at": "2025-03-28T09:15:00.000Z", "started_at": "2025-03-28T09:15:05.000Z", "completed_at": "2025-03-28T09:18:00.000Z", "_links": {"self": {"href": "https://api.acquia.com/v3/deployments/f1dae0f8-67c7-5d1e-cbe1-1f7604f77de4"}, "environment": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}}]}}}}}}}, "Environment_Service_API_Deployment": {"description": "Deployment details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Deployment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"id": "e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "status": "started", "code_reference": "tags/v1.0.0", "run_hooks": true, "hooks_argument": "--skip-db-update", "created_at": "2025-04-01T13:01:06.603Z", "started_at": "2025-04-01T13:01:10.123Z", "completed_at": null, "sender_id": null, "logs": null, "_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}, "environment": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}}}}, "links": {"self": {"operationId": "findDeploymentByDeploymentId", "parameters": {"deploymentId": "$request.path.deploymentId"}}}}, "Environment_Service_API_CodeDeploy": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_CodeDeploy"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"concurrency": 5, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/code-deploy"}}}}}, "links": {"self": {"operationId": "findCodeDeployByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_Environment": {"description": "Environment details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Environment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"codebase": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_EmbeddedCodebase"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}, "codebase": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "name": "environment_3e8ecbec-ea7c-4260-8414-ef2938c859bc", "label": "Environment_3e8ecbec-ea7c-4260-8414-ef2938c859bc", "description": "Description of 3e8ecbec-ea7c-4260-8414-ef2938c859bc", "status": "normal", "flags": {"production": false, "protection_mode": false}, "properties": {"version": "8.3", "max_execution_time": 10, "memory_limit": 192, "apcu": 32, "client_max_body_size": 192, "max_input_vars": 1000, "max_post_size": 256, "memcached_limit": 128, "upload_max_filesize": 192, "operating_system": "focal"}, "reference": "tag/v3.1", "code_switch_status": "IDLE", "ssh_url": "ssh://site.dev@sitedev.ssh.hosted.acquia-sites.com", "_embedded": {"codebase": {"id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323"}}}}}}}, "links": {"self": {"operationId": "findEnvironmentByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_EnvironmentCollection": {"description": "Environment collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Environment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/sites/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/sites/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2{&offset}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "name": "dev", "label": "Dev", "description": "Development environment", "status": "normal", "reference": "branch/main", "code_switch_status": "IDLE", "ssh_url": "ssh://site.dev@sitedev.ssh.hosted.acquia-sites.com", "flags": {"production": false, "protection_mode": false}, "properties": {"version": "8.3"}, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}}]}}}}}, "Environment_Service_API_FilterableEnvironmentCollection": {"description": "Environment collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_FilteredCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Environment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2&offset=0{&filter}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "name": "dev", "label": "Dev", "description": "Development environment", "status": "normal", "reference": "branch/main", "code_switch_status": "IDLE", "ssh_url": "ssh://site.dev@sitedev.ssh.hosted.acquia-sites.com", "flags": {"production": false, "protection_mode": false}, "properties": {"version": "8.3"}, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}}]}}}}}, "Environment_Service_API_SiteInstance": {"description": "Site Instance details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_SiteInstance"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "site_id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "status": "active", "health_status": {"code": "OK", "summary": "The health status is OK.", "details": "The site instance is active"}, "domains": ["example.com", "example-2.com"], "protection_mode": {"is_enabled": true, "is_inherited": true}}}}, "links": {"self": {"operationId": "findSiteInstanceBySiteIdAndEnvironmentId", "parameters": {"siteId": "$request.path.siteId", "environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_Domain": {"description": "Domain details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Domain"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"name": "example.com", "is_managed": false, "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com"}}}}}, "links": {"self": {"operationId": "findDomainBySiteIdAndEnvironmentIdAndDomainName", "parameters": {"siteId": "$request.path.siteId", "environmentId": "$request.path.environmentId", "domainName": "$request.path.domainName"}}}}, "Environment_Service_API_DomainCollection": {"description": "Domain collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Domain"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?limit=2&offset=0{&sort}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"name": "example.com", "is_managed": false, "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com"}}}]}}}}}, "Environment_Service_API_DomainStatus": {"description": "Domain DNS status details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DomainStatus"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"hostname": "example.com", "site_id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "ip_addresses": ["203.0.113.10"], "cnames": [], "flags": {"default": false, "active": true, "dns_resolves": true, "acquia_hosted": true}, "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com/status"}}}}}}, "Environment_Service_API_Database": {"description": "Database details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Database"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"database_name": "site_dev", "database_role": "site_dev_user", "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database"}}}}}, "links": {"self": {"operationId": "findDatabaseBySiteIdAndEnvironmentId", "parameters": {"siteId": "$request.path.siteId", "environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_DatabaseConnection": {"description": "Database connection credential details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DatabaseConnection"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"db_host": "db.example.com", "name": "site_dev", "password": "s3cr3t", "user_name": "site_dev_user", "ssh_host": "site.dev.ssh.hosted.acquia-sites.com", "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/connection"}}}}}}, "Environment_Service_API_DatabaseBackup": {"description": "Database backup details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DatabaseBackup"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "database_id": "b2c3d4e5-f6a7-8901-bcde-f01234567891", "created_at": "2025-04-01T02:00:00.000Z", "type": "DAILY", "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}, "download": {"href": "https://s3.amazonaws.com/acquia-backups/backup-a1b2c3d4.sql.gz?X-Amz-Expires=3600&X-Amz-Signature=abc123"}}}}}, "links": {"self": {"operationId": "findDatabaseBackupBySiteIdAndEnvironmentIdAndBackupId", "parameters": {"siteId": "$request.path.siteId", "environmentId": "$request.path.environmentId", "backupId": "$request.path.backupId"}}}}, "Environment_Service_API_DatabaseBackupCollection": {"description": "Database backup collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DatabaseBackup"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?limit=2&offset=0{&sort}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "database_id": "b2c3d4e5-f6a7-8901-bcde-f01234567891", "created_at": "2025-04-01T02:00:00.000Z", "type": "DAILY", "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}}}]}}}}}, "Environment_Service_API_EgressIpCollection": {"description": "Egress IP collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_EgressIp"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/eips?limit=25&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/eips?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/eips?limit=25{&offset}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 25, "offset": 0}, "_embedded": {"items": [{"id": "eip-a1b2c3d4-e5f6-7890-abcd-ef1234567890", "status": "active", "ipv4": "203.0.113.10", "ipv6": null, "flags": {"is_primary": true}}]}}}}}, "Environment_Service_API_TrustedProxies": {"description": "Trusted proxy configuration details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_TrustedProxies"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"cidrs_ipv4": ["203.0.113.0/24"], "cidrs_ipv6": [], "associated_cdns": {"cloudflare": {"label": "Cloudflare", "is_enabled": true}}, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/trusted-proxies"}}}}}, "links": {"self": {"operationId": "findTrustedProxiesByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_PrivateNetwork": {"description": "Private network details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_PrivateNetwork"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"id": "pn-a1b2c3d4-e5f6-7890-abcd-ef1234567890", "label": "Production VPC", "_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/private-network"}}}}}, "links": {"self": {"operationId": "findPrivateNetworkByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_DomainPattern": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DomainPattern"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"id": "11111111-1111-1111-1111-111111111111", "pattern": "[site-name].acme.com", "_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}}}}, "links": {"self": {"operationId": "findDomainPatternByEnvironmentIdAndPatternId", "parameters": {"environmentId": "$request.path.environmentId", "patternId": "$request.path.patternId"}}}}, "Environment_Service_API_DomainPatternCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DomainPattern"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"domain_pattern_collection": {"summary": "Domain pattern collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns"}, "limit": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?limit=25{&offset}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?limit=25&offset=0{&sort}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 25, "offset": 0}, "_embedded": {"items": [{"id": "11111111-1111-1111-1111-111111111111", "pattern": "[site-name].acme.com", "_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}}]}}}, "domain_pattern_collection_empty": {"summary": "Empty domain pattern collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns"}, "limit": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?limit=25{&offset}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?limit=25&offset=0{&sort}", "templated": true}}, "count": 0, "total": 0, "pagination": {"total": 0, "limit": 25, "offset": 0}, "_embedded": {"items": []}}}}}}}, "Federated_Authentication_API_IdentityProvider": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_IdentityProvider"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}, "example": {"identity_provider_id": "908914ec-2354-4fb1-9298-637247eccc3a", "label": "Acme Corporation Azure AD", "subscription_id": "sub-123", "idp_entity_id": "https://idp.acme.com/saml", "sp_entity_id": "https://sp.acme.com/saml", "sso_url": "https://acme.com/sso", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----", "created_at": "2026-04-15T11:00:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/908914ec-2354-4fb1-9298-637247eccc3a"}, "sso_policy": {"href": "https://api.acquia.com/v3/identity-providers/908914ec-2354-4fb1-9298-637247eccc3a/policies/sso"}}}}}, "links": {"self": {"operationId": "findIdentityProviderByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}, "update": {"operationId": "updateIdentityProviderByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}, "delete": {"operationId": "deleteIdentityProviderByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}, "enable_sso_policy": {"operationId": "enableIdentityProviderSSOPolicyByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}, "disable_sso_policy": {"operationId": "disableIdentityProviderSSOPolicyByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}}}, "Federated_Authentication_API_IdentityProviderCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_FilteredCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_IdentityProvider"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"identity_provider_response": {"summary": "Identity provider collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2&offset=2"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?offset=2{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2&offset=2{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2&offset=2{&sort}", "templated": true}, "prev": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2&offset=0"}, "next": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?offset=4&limit=2"}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"identity_provider_id": "908914ec-2354-4fb1-9298-637247eccc3a", "label": "Acme Corporation Azure AD", "subscription_id": "sub-123", "idp_entity_id": "https://idp.acme.com/saml", "sp_entity_id": "https://sp.acme.com/saml", "sso_url": "https://acme.com/sso", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----", "created_at": "2026-04-15T11:00:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/908914ec-2354-4fb1-9298-637247eccc3a"}, "sso_policy": {"href": "https://api.acquia.com/v3/identity-providers/908914ec-2354-4fb1-9298-637247eccc3a/policies/sso"}}}, {"identity_provider_id": "123456ec-2354-4fb1-9298-637247eccc3b", "label": "Acme Research Ping Identity", "subscription_id": "sub-123", "idp_entity_id": "https://idp-research.acme.com/saml", "sp_entity_id": "https://sp-research.acme.com/saml", "sso_url": "https://research.acme.com/sso", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----", "created_at": "2026-04-20T14:20:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/123456ec-2354-4fb1-9298-637247eccc3b"}, "sso_policy": {"href": "https://api.acquia.com/v3/identity-providers/123456ec-2354-4fb1-9298-637247eccc3b/policies/sso"}}}]}}}}}}}, "Federated_Authentication_API_SsoDomain": {"description": "OK. The `_links` object always contains `self`. Additional links are state-conditional: `verify` is present when `health.code` is `202` or `404` (POST it to initiate or retry DNS TXT record verification); `identity_providers` is present when the domain is referenced by one or more Identity Provider policies (follows to a filtered list of those IdPs; when present the domain cannot be deleted \u2014 remove it from all policies first).", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_SsoDomain"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}, "examples": {"pending_verification": {"summary": "Domain awaiting DNS verification", "description": "A newly created domain whose DNS TXT record has not yet been confirmed. `health.code` is `202`; the `verify` link is present so the client can trigger or retry the check. `identity_providers` is absent because no policy can reference an unverified domain.", "value": {"domain_id": "dom-789", "domain": "acme.corp", "subscription_id": "sub-123", "health": {"code": "202", "summary": "Verification pending", "details": "Acquia is waiting to confirm the DNS TXT record. Ensure the record has been published and allow time for DNS propagation, then retry verification."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.corp", "value": "xyz789abc123", "health": {"code": "202", "summary": "Check in progress", "details": "The TXT record check has not yet completed."}}, "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-789"}, "verify": {"href": "https://api.acquia.com/v3/sso-domains/dom-789/actions/verify"}}}}, "failed_verification": {"summary": "Domain verification failed \u2014 DNS record not found", "description": "A domain whose TXT record could not be found. `health.code` is `404`; `details` names the exact record to check. The `verify` link is present so the client can retry after fixing the DNS entry.", "value": {"domain_id": "dom-789", "domain": "acme.corp", "subscription_id": "sub-123", "health": {"code": "404", "summary": "Missing DNS record", "details": "Acquia could not verify the presence of the required TXT DNS record at _acquia-challenge.acme.corp. Ensure the record is published with the correct value and retry verification."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.corp", "value": "xyz789abc123", "health": {"code": "404", "summary": "Missing DNS record", "details": "The TXT record at _acquia-challenge.acme.corp was not found or does not match the expected value xyz789abc123."}}, "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-789"}, "verify": {"href": "https://api.acquia.com/v3/sso-domains/dom-789/actions/verify"}}}}, "verified_in_use": {"summary": "Verified domain referenced by an Identity Provider policy", "description": "A verified domain enforced by at least one Identity Provider policy. `health.code` is `200`; `verify` is absent; `identity_providers` is present. A DELETE on this domain will return 409 until the domain is removed from all policies.", "value": {"domain_id": "dom-456", "domain": "acme.com", "subscription_id": "sub-123", "health": {"code": "200", "summary": "Verified", "details": "The DNS TXT record has been confirmed and the domain is verified."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.com", "value": "abc123def456", "health": {"code": "200", "summary": "Verified", "details": "The TXT record at _acquia-challenge.acme.com matches the expected value."}}, "verified_at": "2026-04-15T10:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}, "identity_providers": {"href": "https://api.acquia.com/v3/identity-providers?filter=domain_id%3Ddom-456"}}}}}}}, "links": {"self": {"operationId": "findSsoDomainBySsoDomainId", "parameters": {"domainId": "$response.body#/domain_id"}}, "delete": {"operationId": "deleteSsoDomainBySsoDomainId", "parameters": {"domainId": "$response.body#/domain_id"}}, "verify": {"operationId": "verifySsoDomainBySsoDomainId", "parameters": {"domainId": "$response.body#/domain_id"}}}}, "Federated_Authentication_API_SsoDomainCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_FilteredCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_SsoDomain"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"domain_response": {"summary": "Domain collection with pagination", "description": "Two domains in different states: one verified and in use by a policy (carries `identity_providers` link), one pending verification (carries `verify` link).", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?offset=2&limit=2"}}, "count": 2, "total": 3, "pagination": {"total": 3, "limit": 2, "offset": 0}, "_embedded": {"items": [{"domain_id": "dom-456", "domain": "acme.com", "subscription_id": "sub-123", "health": {"code": "200", "summary": "Verified", "details": "The DNS TXT record has been confirmed and the domain is verified."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.com", "value": "abc123def456", "health": {"code": "200", "summary": "Verified", "details": "The TXT record at _acquia-challenge.acme.com matches the expected value."}}, "verified_at": "2026-04-15T10:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}, "identity_providers": {"href": "https://api.acquia.com/v3/identity-providers?filter=domain_id%3Ddom-456"}}}, {"domain_id": "dom-789", "domain": "acme.corp", "subscription_id": "sub-123", "health": {"code": "202", "summary": "Verification pending", "details": "Acquia is waiting to confirm the DNS TXT record. Ensure the record has been published and allow time for DNS propagation, then retry verification."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.corp", "value": "xyz789abc123", "health": {"code": "202", "summary": "Check in progress", "details": "The TXT record check has not yet completed."}}, "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-789"}, "verify": {"href": "https://api.acquia.com/v3/sso-domains/dom-789/actions/verify"}}}]}}}}}}}, "Federated_Authentication_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Federated_Authentication_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Federated_Authentication_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Federated_Authentication_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Federated_Authentication_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Federated_Authentication_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}}, "requestBodies": {"Codebase_Service_API_CreateCodebaseRequest": {"description": "Codebase creation request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"codebase_id": {"type": "string", "format": "uuid", "description": "Client-supplied UUID for the new codebase"}, "label": {"type": "string", "description": "Human-readable label for the codebase"}, "region": {"type": "string", "description": "AWS region where the codebase will be created"}}, "required": ["codebase_id", "label", "region"], "additionalProperties": false}, "examples": {"create": {"summary": "Create a codebase", "description": "Creates a new codebase for a subscription", "value": {"codebase_id": "a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4", "label": "my-codebase", "region": "us-east-1"}}}}}}, "Codebase_Service_API_CreateDomainPatternRequest": {"description": "Create domain pattern request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])(?=.*\\[environment-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The domain pattern to apply to all associated sites in this codebase, optionally followed by a single path segment. Both [site-name] and [environment-name] tokens are mandatory. Domain \u2264 200 chars excluding token placeholders; optional path max 255 chars matching ^/[A-Za-z0-9._-]+$. Additional semantic rules (no IPs, no forbidden suffixes, no wildcards, one pattern per codebase) are enforced at the service layer.\n"}}, "required": ["pattern"], "additionalProperties": false}, "examples": {"create_domain_pattern": {"summary": "Create a domain pattern", "value": {"pattern": "[site-name].[environment-name].acme.com"}}}}}}, "Codebase_Service_API_UpdateCodebaseRequest": {"description": "Codebase update request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"label": {"type": "string", "description": "Human-readable label for the codebase"}, "description": {"type": "string", "description": "Description of the codebase"}}, "minProperties": 1, "additionalProperties": false}, "examples": {"update": {"summary": "Update a codebase", "description": "Updates an existing codebase's label and description", "value": {"label": "updated-codebase-label", "description": "Updated codebase description"}}}}}}, "Codebase_Service_API_UpdateDomainPatternRequest": {"description": "Update domain pattern request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])(?=.*\\[environment-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The updated domain pattern to apply to all associated sites in this codebase, optionally followed by a single path segment. Both [site-name] and [environment-name] tokens are mandatory. Domain \u2264 200 chars excluding token placeholders; optional path max 255 chars matching ^/[A-Za-z0-9._-]+$. Additional semantic rules (no IPs, no forbidden suffixes, no wildcards, one pattern per codebase) are enforced at the service layer.\n"}}, "required": ["pattern"], "additionalProperties": false, "minProperties": 1}, "examples": {"update_domain_pattern": {"summary": "Update a domain pattern", "value": {"pattern": "[site-name].[environment-name].acme.com"}}}}}}, "Site_Service_API_DuplicateSiteRequest": {"description": "Site duplication request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"environment_mapping": {"type": "array", "items": {"type": "string", "pattern": "^[a-zA-Z0-9-]+:[a-zA-Z0-9-]+$", "description": "Environment mapping in the format 'sourceEnvId:targetEnvId'"}, "description": "Array of environment mappings. You must provide exactly one environment mapping. Each entry maps a source environment ID to a target environment ID, separated by a colon.\n", "minItems": 1, "maxItems": 1, "example": ["0ebce493-9d09-479d-a9a8-138a206fa687:a1b2c3d4-e5f6-7890-abcd-ef1234567890"]}, "site_name": {"type": "string", "description": "Machine name for the duplicated site. Must start with a lowercase letter and contain only lowercase letters and numbers. Maximum 14 characters.\n", "minLength": 1, "maxLength": 14, "pattern": "^[a-z][a-z0-9]*$", "example": "dupsite"}, "site_label": {"type": "string", "description": "Human-readable label for the duplicated site. Must only contain letters, numbers, and spaces. Maximum 50 characters.\n", "minLength": 1, "maxLength": 50, "example": "Duplicated Site"}, "site_id": {"type": "string", "format": "uuid", "description": "An optional explicit UUID for the new duplicated site. A UUID is generated automatically if omitted.", "example": "f1a2b3c4-d5e6-7890-abcd-ef1234567890"}, "hook_argument": {"type": "string", "description": "Optional hook argument to pass to the duplication process.", "example": "--verbose"}}, "required": ["environment_mapping", "site_name", "site_label"], "additionalProperties": false}, "examples": {"duplicate_basic": {"summary": "Duplicate a site with required fields", "description": "Duplicates a site with a single environment mapping", "value": {"environment_mapping": ["0ebce493-9d09-479d-a9a8-138a206fa687:a1b2c3d4-e5f6-7890-abcd-ef1234567890"], "site_name": "dupsite", "site_label": "Duplicated Site"}}, "duplicate_with_options": {"summary": "Duplicate a site with all options", "description": "Duplicates a site specifying a custom site ID and hook argument", "value": {"environment_mapping": ["0ebce493-9d09-479d-a9a8-138a206fa687:a1b2c3d4-e5f6-7890-abcd-ef1234567890"], "site_name": "duphook", "site_label": "Dup With Hook", "site_id": "f1a2b3c4-d5e6-7890-abcd-ef1234567890", "hook_argument": "my-hook-arg"}}}}}}, "Site_Service_API_CreateSiteRequest": {"description": "Site creation request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The machine name of the site. Must start with a lowercase letter and contain only lowercase letters and numbers.", "minLength": 1, "maxLength": 14, "pattern": "^[a-z][a-z0-9]*$", "example": "mysite"}, "label": {"type": "string", "description": "The human-readable label for the site.", "minLength": 1, "maxLength": 50, "example": "My Site"}, "codebase_id": {"type": "string", "description": "The unique identifier of the codebase to associate with this site.", "pattern": "^[a-zA-Z0-9-]+$", "example": "a9b8c7d6-e5f4-3210-abcd-ef9876543210"}, "site_id": {"type": "string", "format": "uuid", "description": "An optional explicit UUID for the new site. A UUID is generated automatically if omitted.", "example": "0ebce493-9d09-479d-a9a8-138a206fa687"}, "description": {"type": "string", "description": "An optional description for the site.", "maxLength": 512, "example": "A production site for the marketing team."}}, "required": ["name", "label", "codebase_id"], "additionalProperties": false}, "examples": {"create_site_full": {"summary": "Create a new site with all fields", "value": {"name": "mysite", "label": "My Site", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210", "site_id": "0ebce493-9d09-479d-a9a8-138a206fa687", "description": "This is a description of my site."}}, "create_site_minimal": {"summary": "Create a new site with required fields only", "value": {"name": "newsitename", "label": "New Site Label", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210"}}}}}}, "Site_Service_API_UpdateSiteRequest": {"description": "Site update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"label": {"type": "string", "description": "The new human-readable label for the site.", "minLength": 1, "maxLength": 50, "example": "My Updated Site"}, "description": {"type": "string", "description": "The new description for the site.", "maxLength": 512, "example": "Updated description for this site."}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update_label": {"summary": "Update site label", "value": {"label": "My Updated Site"}}, "update_description": {"summary": "Update site description", "value": {"description": "Updated description for this site."}}, "update_both": {"summary": "Update label and description", "value": {"label": "My Updated Site", "description": "Updated description for this site."}}}}}}, "CDN_API_ProvisionCdnForDomainRequest": {"description": "Domain CDN provisioning request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"environment_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "The environment identifier that the domain will be associated with for purging purposes."}}, "additionalProperties": false, "required": ["environment_id"], "minProperties": 1}, "example": {"environment_id": "0c3f0f5f-5727-4838-9459-2d90ee1cf7c1"}}}}, "CDN_API_CreatePurgeRequest": {"description": "Purge request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"resource_type": {"type": "string", "description": "The type of resource to purge.", "enum": ["tags", "urls", "domains", "everything"]}, "values": {"type": "array", "description": "List of values to purge based on the resource type.\nRequired when `resource_type` is not `everything`.\n", "items": {"type": "string"}, "minItems": 1}}, "additionalProperties": false, "required": ["resource_type"], "minProperties": 1}, "examples": {"purge_urls": {"summary": "Purge specific URLs", "value": {"resource_type": "urls", "values": ["https://example.com/page1", "https://example.com/page2"]}}, "purge_tags": {"summary": "Purge by cache tags", "value": {"resource_type": "tags", "values": ["product-123", "category-456"]}}, "purge_domains": {"summary": "Purge entire domains", "value": {"resource_type": "domains", "values": ["example.com", "test.example.org"]}}, "purge_everything": {"summary": "Purge everything", "value": {"resource_type": "everything"}}}}}}, "CDN_API_UpdateSecurityRuleSetRequest": {"description": "Security ruleset update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"is_enabled": {"type": "boolean", "description": "Indicates whether the security ruleset should be enabled."}}, "additionalProperties": false, "required": ["is_enabled"], "minProperties": 1}, "examples": {"enable": {"summary": "Enables a security ruleset", "value": {"is_enabled": true}}}}}}, "CDN_API_CreateIpRuleRequest": {"description": "IP rule create request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"ips": {"type": "array", "description": "The IPs or CIDR blocks to include in the rule.", "items": {"type": "string", "description": "An IP address or CIDR block."}}, "action": {"type": "string", "enum": ["block", "allow"], "description": "The action applied when the rule matches."}, "display_name": {"type": "string", "description": "The display name of the IP rule."}, "description": {"type": "string", "description": "The description of the IP rule."}}, "additionalProperties": false, "required": ["ips", "action", "display_name"]}, "examples": {"create": {"summary": "Creates an IP rule", "value": {"ips": ["192.0.2.10", "198.51.100.0/24"], "action": "block", "display_name": "Block office IPs", "description": "Blocks office IP ranges."}}}}}}, "CDN_API_UpdateIpRuleRequest": {"description": "IP rule update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the IP rule."}, "action": {"type": "string", "enum": ["block", "allow"], "description": "The action applied when the rule matches."}, "description": {"type": "string", "description": "The description of the IP rule."}, "ips": {"type": "array", "description": "The IPs or CIDR blocks associated with the rule.", "items": {"type": "string", "description": "An IP address or CIDR block."}}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update": {"summary": "Updates an IP rule", "value": {"display_name": "Allow support", "action": "allow", "ips": ["203.0.113.5"]}}}}}}, "CDN_API_CreateCustomRuleRequest": {"description": "Custom security rule create request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the custom security rule."}, "action": {"type": "string", "enum": ["block", "allow", "alert"], "description": "The action applied when the rule matches."}, "priority": {"type": "integer", "minimum": 1, "description": "The priority order for the rule."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "paths": {"type": "array", "description": "The paths the rule applies to.", "items": {"type": "string", "description": "A path pattern."}}}, "additionalProperties": false, "required": ["display_name", "action", "domains", "paths"], "minProperties": 1}, "examples": {"create": {"summary": "Creates a custom security rule", "value": {"display_name": "Block bad bots", "action": "block", "priority": 1, "domains": ["example.com"], "paths": ["/api/*"]}}}}}}, "CDN_API_CreateRateLimitingRuleRequest": {"description": "Rate limiting rule create request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the rate limiting rule."}, "action": {"type": "string", "enum": ["block", "alert"], "description": "The action applied when the rule matches."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "rate_limit_per_minute": {"type": "string", "enum": ["lenient", "moderate", "strict"], "description": "The rate limit category applied to the rule."}}, "additionalProperties": false, "required": ["display_name", "action", "rate_limit_per_minute"], "minProperties": 1}, "examples": {"create": {"summary": "Creates a rate limiting rule", "value": {"display_name": "Rate Rule 1", "action": "alert", "rate_limit_per_minute": "lenient", "domains": ["example.com"]}}}}}}, "CDN_API_UpdateRateLimitingRuleRequest": {"description": "Rate limiting rule update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the rate limiting rule."}, "action": {"type": "string", "enum": ["block", "alert"], "description": "The action applied when the rule matches."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "rate_limit_per_minute": {"type": "string", "enum": ["lenient", "moderate", "strict"], "description": "The rate limit category applied to the rule."}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update": {"summary": "Updates a rate limiting rule", "value": {"display_name": "Rate Rule 2", "action": "block", "rate_limit_per_minute": "strict", "domains": ["shop.example.com"]}}}}}}, "CDN_API_UpdateCustomRuleRequest": {"description": "Custom security rule update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the custom security rule."}, "action": {"type": "string", "enum": ["block", "allow", "alert"], "description": "The action applied when the rule matches."}, "priority": {"type": "integer", "minimum": 1, "description": "The priority order for the rule."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "paths": {"type": "array", "description": "The paths the rule applies to.", "items": {"type": "string", "description": "A path pattern."}}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update": {"summary": "Updates a custom security rule", "value": {"display_name": "Alert login scans", "action": "alert", "priority": 2, "domains": ["shop.example.com"], "paths": ["/login"]}}}}}}, "SSH_Key_Service_API_SshKeyRequestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "required": ["label", "public_key"], "description": "Describes the request body for an SSH key.", "properties": {"label": {"type": "string", "description": "The SSH key label."}, "public_key": {"type": "string", "description": "The public key."}}, "additionalProperties": false, "minProperties": 1}, "example": {"label": "mykey", "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQChwPHzTTDKDpSbpa2+d22LcbQmsw92eLsUK3Fmei1fiGDkd34NsYCN8m7lsi3NbvdMS83CtPQPWiCveYPzFs1/hHc4PYj8opD2CNnr5iWVVbyaulCYHCgVv4aB/ojcexg8q483A4xJeF15TiCr/gu34rK6ucTvC/tn/rCwJBudczvEwt0klqYwv8Cl/ytaQboSuem5KgSjO3lMrb6CWtfSNhE43ZOw+UBFBqxIninN868vGMkIv9VY34Pwj54rPn/ItQd6Ef4B0KHHaGmzK0vfP+AK7FxNMoHnj3iYT33KZNqtDozdn5tYyH/bThPebEtgqUn+/w5l6wZIC/8zzvls/127ngHk+jNa0PlNyS2TxhPUK4NaPHIEnnrlp07JEYC4ImcBjaYCWAdcTcUkcJjwZQkN4bGmyO9cjICH98SdLD/HxqzTHeaYDbAX/Hu9HfaBb5dXLWsjw3Xc6hoVnUUZbMQyfgb0KgxDLh92eNGxJkpZiL0VDNOWCxDWsNpzwhLNkLqCvI6lyxiLaUzvJAk6dPaRhExmCbU1lDO2eR0FdSwC1TEhJOT9eDIK1r2hztZKs2oa5FNFfB/IFHVWasVFC9N2h/r/egB5zsRxC9MqBLRBq95NBxaRSFng6ML5WZSw41Qi4C/JWVm89rdj2WqScDHYyAdwyyppWU4T5c9Fmw== example@example.com"}}}}, "Failover_Service_API_CreateFailoverGroupRequest": {"description": "Create failover group request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the failover group.", "example": "Primary Failover Group"}}, "required": ["name"], "additionalProperties": false}, "examples": {"create": {"summary": "Creates a new failover group", "description": "Creates a new failover group with the specified name", "value": {"name": "Primary Failover Group"}}}}}}, "Failover_Service_API_SaveMultiRegionFailoverRequest": {"description": "Multi-region failover enable request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"region": {"type": "string", "description": "The region to enable multi-region failover for.", "example": "us-east-1"}}, "required": ["region"], "additionalProperties": false, "minProperties": 1}, "examples": {"enable": {"summary": "Enables multi-region failover for a region", "description": "Enables multi-region failover for the specified region", "value": {"region": "us-east-1"}}}}}}, "Tag_API_SaveTagRequest": {"description": "Tag create/update request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"color": {"type": "string", "pattern": "^#((?:[a-f0-9]{3}){1,2})$", "description": "A color for the specified tag"}}, "additionalProperties": false, "minProperties": 1}, "examples": {"save": {"summary": "Saves a tag", "description": "Saves a tag with specified color", "value": {"color": "#000000"}}}}}}, "Environment_Service_API_StartDeploymentRequest": {"description": "Deployment start request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"run_hooks": {"type": "boolean", "description": "Whether to run deployment hooks."}, "code_reference": {"type": "string", "description": "The code reference (branch or tag) to deploy."}, "hooks_argument": {"type": "string", "description": "Additional arguments passed to deployment hooks."}}, "required": ["run_hooks", "code_reference"], "additionalProperties": false, "minProperties": 1}, "examples": {"start_deployment": {"summary": "Start a deployment", "description": "Starts a deployment for the specified environment.", "value": {"run_hooks": true, "code_reference": "release-2025-01-15", "hooks_argument": "--migrate --clear-cache"}}}}}}, "Environment_Service_API_UpdateCodeDeployRequest": {"description": "Code deploy concurrency update request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"concurrency": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Maximum number of concurrent code deploys allowed for the environment."}}, "required": ["concurrency"], "additionalProperties": false, "minProperties": 1}, "examples": {"update_concurrency": {"summary": "Update code deploy concurrency", "description": "Sets the maximum concurrent code deploys for the environment.", "value": {"concurrency": 10}}}}}}, "Environment_Service_API_ReorderSiteInstancesRequest": {"description": "Site instances reorder request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"site_instance_ids": {"type": "array", "description": "List of site instance IDs in the desired priority order.", "items": {"type": "string", "description": "Site instance identifier in the format {siteId}.{environmentId} (dot-separated site and environment UUIDs)."}}}, "required": ["site_instance_ids"], "additionalProperties": false, "minProperties": 1}, "examples": {"reorder": {"summary": "Reorder site instances", "description": "Provides the desired order of site instance IDs for the environment.", "value": {"site_instance_ids": ["3e8ecbec-ea7c-4260-8414-ef2938c859bc.a0c9dff7-56b6-4c0d-bad0-0e6593f66cd3", "b1d8e2f8-67c7-5d1e-cbe1-1f7604f77de4.c2e9f3a9-78d8-6e2f-dcf2-2a8715a88ef5", "d3fa04ba-89e9-4f3a-edf3-3b9826b99fa6.e4ab15cb-90fa-4a4b-fea4-4c0937c00ab7"]}}}}}}, "Environment_Service_API_UpdateEnvironmentRequest": {"description": "Update environment request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"label": {"type": "string", "minLength": 1, "maxLength": 128, "description": "Human-readable label for the environment."}, "description": {"type": "string", "minLength": 1, "maxLength": 512, "description": "Description for the environment."}, "properties": {"type": "object", "description": "PHP and server configuration properties for the environment.", "properties": {"version": {"type": "string", "description": "PHP version (e.g. \"8.3\")."}, "apcu": {"type": "integer", "description": "APCu memory limit in MB."}, "max_execution_time": {"type": "integer", "description": "PHP max execution time in seconds."}, "memory_limit": {"type": "integer", "description": "PHP memory limit in MB."}, "opcache": {"type": "integer", "description": "OPcache memory limit in MB."}, "interned_strings_buffer": {"type": "integer", "description": "OPcache interned strings buffer in MB."}, "client_max_body_size": {"type": "integer", "description": "Nginx client_max_body_size in MB."}, "upload_max_filesize": {"type": "integer", "description": "PHP upload_max_filesize in MB."}, "max_post_size": {"type": "integer", "description": "PHP post_max_size in MB."}, "max_input_vars": {"type": "integer", "description": "PHP max_input_vars."}, "memcached_limit": {"type": "integer", "description": "Memcached memory limit in MB."}, "operating_system": {"type": "string", "description": "Operating system (e.g. \"focal\")."}, "sendmail_path": {"type": "string", "description": "Sendmail path configuration."}}}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update_label": {"summary": "Update environment label", "value": {"label": "Staging", "description": "Staging environment"}}, "update_properties": {"summary": "Update PHP properties", "value": {"properties": {"version": "8.3", "memory_limit": 256}}}}}}}, "Environment_Service_API_ClearCachesRequest": {"description": "Clear caches request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"domains": {"type": "array", "description": "List of domain names to clear caches for.", "minItems": 1, "items": {"type": "string", "description": "A domain name."}}}, "required": ["domains"], "additionalProperties": false}, "examples": {"clear_caches": {"summary": "Clear caches for specific domains", "value": {"domains": ["example.com", "www.example.com"]}}}}}}, "Environment_Service_API_CreateSiteInstanceRequest": {"description": "Create site instance request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"site_id": {"type": "string", "description": "The UUID of the site to associate with this environment."}, "source_environment_id": {"type": "string", "description": "The UUID of the environment to copy files and database from during creation."}, "source_site_id": {"type": "string", "description": "The UUID of the source site to copy files from during creation."}, "hook_arguments": {"type": "string", "description": "Additional arguments to pass to deployment hooks during creation."}}, "required": ["site_id"], "additionalProperties": false}, "examples": {"create": {"summary": "Associate a site with an environment", "value": {"site_id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}}}}}, "Environment_Service_API_CopySiteInstanceFilesRequest": {"description": "Copy site instance files request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"source_environment_id": {"type": "string", "description": "The UUID of the environment to copy files from."}}, "required": ["source_environment_id"], "additionalProperties": false}, "examples": {"copy_files": {"summary": "Copy files from another environment", "value": {"source_environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323"}}}}}}, "Environment_Service_API_CopySiteInstanceDatabaseRequest": {"description": "Copy site instance database request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"source_environment_id": {"type": "string", "description": "The UUID of the environment to copy the database from."}}, "required": ["source_environment_id"], "additionalProperties": false}, "examples": {"copy_database": {"summary": "Copy database from another environment", "value": {"source_environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323"}}}}}}, "Environment_Service_API_AssociatePrivateNetworkRequest": {"description": "Associate private network request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"private_network_id": {"type": "string", "description": "The identifier of the private network to associate with this environment."}}, "required": ["private_network_id"], "additionalProperties": false, "minProperties": 1}, "examples": {"associate": {"summary": "Associate a private network", "value": {"private_network_id": "pn-a1b2c3d4-e5f6-7890-abcd-ef1234567890"}}}}}}, "Environment_Service_API_UpdateTrustedProxiesRequest": {"description": "Update trusted proxies request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"cidrs_ipv4": {"type": "array", "description": "List of trusted IPv4 CIDR blocks.", "items": {"type": "string", "description": "An IPv4 CIDR block (e.g. \"203.0.113.0/24\")."}}, "cidrs_ipv6": {"type": "array", "description": "List of trusted IPv6 CIDR blocks.", "items": {"type": "string", "description": "An IPv6 CIDR block (e.g. \"2001:db8::/32\")."}}, "associated_cdns": {"type": "array", "description": "List of CDN names to associate with this environment.", "items": {"type": "string", "enum": ["akamai", "cloudflare", "fastly"]}}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update": {"summary": "Update trusted proxy configuration", "value": {"cidrs_ipv4": ["203.0.113.0/24"], "cidrs_ipv6": [], "associated_cdns": ["cloudflare"]}}}}}}, "Environment_Service_API_CreateDomainPatternRequest": {"description": "Create domain pattern request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The domain pattern to apply to all associated sites in this environment, optionally followed by a single path segment. The [site-name] token is mandatory; [environment-name] is optional. Domain \u2264 200 chars excluding token placeholders; optional path max 255 chars matching ^/[A-Za-z0-9._-]+$. Additional semantic rules (no IPs, no forbidden suffixes, no wildcards, one pattern per environment) are enforced at the service layer.\n", "example": "[site-name].acme.com"}}, "required": ["pattern"], "additionalProperties": false}, "examples": {"create_domain_pattern": {"summary": "Create a domain pattern", "value": {"pattern": "[site-name].acme.com"}}}}}}, "Environment_Service_API_UpdateDomainPatternRequest": {"description": "Update domain pattern request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The updated domain pattern to apply to all associated sites in this environment, optionally followed by a single path segment. The [site-name] token is mandatory. Domain \u2264 200 chars excluding token placeholders; optional path max 255 chars matching ^/[A-Za-z0-9._-]+$. Additional semantic rules (no IPs, no forbidden suffixes, no wildcards, one pattern per environment) are enforced at the service layer.\n"}}, "required": ["pattern"], "additionalProperties": false, "minProperties": 1}, "examples": {"update_domain_pattern": {"summary": "Update a domain pattern", "value": {"pattern": "[site-name].staging.acme.com"}}}}}}, "Federated_Authentication_API_CreateSsoDomain": {"description": "Request body for creating a new domain.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"domain": {"type": "string", "pattern": "^[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?(\\.[a-zA-Z]{2,})+$", "description": "The domain name to create (e.g., \"acme.com\")."}}, "required": ["domain"], "additionalProperties": false}, "example": {"domain": "acme.com"}}}}, "Federated_Authentication_API_CreateIdentityProvider": {"description": "Request body for creating a new Identity Provider.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"idp_entity_id": {"type": "string", "format": "uri", "description": "The Identity Provider Entity ID."}, "label": {"type": "string", "description": "The name of the Identity Provider."}, "sso_url": {"type": "string", "format": "uri", "description": "The SSO URL for this IdP."}, "certificate": {"type": "string", "description": "The certificate for this IdP."}}, "required": ["label", "idp_entity_id", "sso_url", "certificate"], "additionalProperties": false}, "example": {"label": "Acme Corporation Azure AD", "idp_entity_id": "https://idp.acme.com/saml", "sso_url": "https://acme.com/sso", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----"}}}}, "Federated_Authentication_API_UpdateIdentityProvider": {"description": "Request body for updating an existing Identity Provider.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"label": {"type": "string", "description": "The name of the Identity Provider."}, "certificate": {"type": "string", "description": "The X.509 certificate used for SAML authentication."}, "sso_url": {"type": "string", "format": "uri", "description": "The Single Sign-On URL for the Identity Provider."}, "idp_entity_id": {"type": "string", "format": "uri", "description": "The Identity Provider Entity ID."}}, "additionalProperties": false, "minProperties": 1}, "example": {"label": "Updated Acme Corporation Azure AD", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----", "sso_url": "https://updatedacme.com/sso", "idp_entity_id": "https://idp2.acme.com/saml"}}}}, "Federated_Authentication_API_CreateSsoPolicy": {"$ref": "#/components/requestBodies/Federated_Authentication_API_CreateSsoPolicyRequest"}, "Federated_Authentication_API_UpdateSsoPolicy": {"$ref": "#/components/requestBodies/Federated_Authentication_API_UpdateSsoPolicyRequest"}, "Federated_Authentication_API_UpdateSsoPolicyRequest": {"description": "Request body for updating an SSO policy for an Identity Provider.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"domain_ids": {"type": "array", "description": "List of verified domain IDs to enforce this Identity Provider for.", "items": {"type": "string", "description": "Reference to a verified SSO domain."}}}, "required": ["domain_ids"], "additionalProperties": false, "minProperties": 1}, "example": {"domain_ids": ["dom-456"]}}}}, "Federated_Authentication_API_CreateSsoPolicyRequest": {"description": "Request body for creating an SSO policy for an Identity Provider.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"domain_ids": {"type": "array", "description": "List of verified domain IDs to enforce this Identity Provider for.", "items": {"type": "string", "description": "Reference to a verified SSO domain."}}}, "required": ["domain_ids"], "additionalProperties": false}, "example": {"domain_ids": ["dom-456", "dom-789"]}}}}}, "securitySchemes": {"Codebase_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Site_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "CDN_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "SSH_Key_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Failover_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Tag_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Environment_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Federated_Authentication_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}}}} \ No newline at end of file +{"openapi": "3.1.1", "info": {"title": "Acquia Cloud Platform API", "version": "3.0.0", "description": "The Cloud Platform API includes over 200 endpoints to enhance developer workflow, website management, and provisioning capabilities.", "license": {"name": "Acquia Terms of Service", "url": "https://www.acquia.com/acquia/agreement"}, "contact": {"name": "Acquia", "url": "https://www.acquia.com/contact"}, "x-test-drift": "force-drift-for-automerge-test"}, "tags": [{"name": "Codebases", "description": "Codebase management", "x-displayName": "Codebases"}, {"name": "Codebase References", "description": "Codebase branch and tag references", "x-displayName": "Codebase References"}, {"name": "Domain Patterns", "description": "Automated domain pattern management", "x-displayName": "Domain Patterns"}, {"name": "Sites", "description": "Site management", "x-displayName": "Sites"}, {"name": "CDNs", "description": "CDN domain management and cache purge operations", "x-displayName": "CDNs"}, {"name": "SSH Keys", "description": "SSH key management for user accounts", "x-displayName": "SSH Keys"}, {"name": "Failover Groups", "description": "Failover group management", "x-displayName": "Failover Groups"}, {"name": "Environments", "description": "Environment configuration and lifecycle", "x-displayName": "Environments"}, {"name": "Tags", "description": "Tag management", "x-displayName": "Tags"}, {"name": "Site Instances", "description": "Site instance management", "x-displayName": "Site Instances"}, {"name": "Deployments", "description": "Deployment management", "x-displayName": "Deployments"}, {"name": "Code Deploys", "description": "Code deploy operations", "x-displayName": "Code Deploys"}, {"name": "Domains", "description": "Domain management", "x-displayName": "Domains"}, {"name": "Site Instance Databases", "description": "Site instance database, connection, and backup management", "x-displayName": "Site Instance Databases"}, {"name": "Identity Providers", "description": "Federated SSO identity provider management", "x-displayName": "Identity Providers"}], "paths": {"/codebases": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of codebases accessible by the user.", "description": "Retrieves a paginated collection of codebases. Use the `filter` parameter to scope results by association.\n\nFilter syntax:\n- By application: `filter=application_id%3D` (e.g. `filter=application_id%3Dabc-123`)\n", "operationId": "getCodebases", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_Offset"}, {"$ref": "#/components/parameters/Codebase_Service_API_Limit"}, {"$ref": "#/components/parameters/Codebase_Service_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_CodebaseCollection"}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a codebase by its ID.", "operationId": "findCodebaseByCodebaseId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:find"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_Codebase"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates a codebase by its ID.", "operationId": "updateCodebaseByCodebaseId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:update"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}], "requestBody": {"$ref": "#/components/requestBodies/Codebase_Service_API_UpdateCodebaseRequest"}, "responses": {"200": {"description": "Codebase updated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Codebase updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}, "message": "Codebase updated."}}}}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a codebase by its ID.", "operationId": "deleteCodebaseByCodebaseId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:delete"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}], "responses": {"200": {"description": "Codebase deleted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Codebase deleted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}, "message": "Codebase deleted."}}}}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/references": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of git references for a codebase.", "operationId": "getReferencesByCodebaseId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list-references"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebase References"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_Offset"}, {"$ref": "#/components/parameters/Codebase_Service_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_CodebaseReferenceCollection"}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/references/{referenceName}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a single git reference for a codebase.", "operationId": "findReferenceByCodebaseIdAndReferenceName", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:find-reference"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebase References"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_ReferenceName"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_CodebaseReference"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/domain-patterns": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of domain patterns for the specified codebase.", "operationId": "getDomainPatternsByCodebaseId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list-domain-patterns"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_Offset"}, {"$ref": "#/components/parameters/Codebase_Service_API_Limit"}, {"$ref": "#/components/parameters/Codebase_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_DomainPatternCollection"}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a domain pattern for the specified codebase.", "operationId": "createDomainPatternByCodebaseId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:create-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}], "requestBody": {"$ref": "#/components/requestBodies/Codebase_Service_API_CreateDomainPatternRequest"}, "responses": {"202": {"description": "Domain pattern creation initiated.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern is being applied to all associated sites in this codebase.", "description": "Confirmation message that the domain pattern is being applied."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}, "message": "The domain pattern is being applied to all associated sites in this codebase."}}}}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/domain-patterns/{patternId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a domain pattern by codebase ID and pattern ID.", "operationId": "findDomainPatternByCodebaseIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:find-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_PatternId"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_DomainPattern"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates a domain pattern for the specified codebase.", "operationId": "updateDomainPatternByCodebaseIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:update-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_PatternId"}], "requestBody": {"$ref": "#/components/requestBodies/Codebase_Service_API_UpdateDomainPatternRequest"}, "responses": {"202": {"description": "Domain pattern update initiated.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern update is being applied to all associated sites in this codebase.", "description": "Confirmation message that the domain pattern update is being applied."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}, "message": "The domain pattern update is being applied to all associated sites in this codebase."}}}}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a domain pattern for the specified codebase. Engineering role only.", "operationId": "deleteDomainPatternByCodebaseIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:delete-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_PatternId"}], "responses": {"202": {"description": "Domain pattern deletion initiated. The 202 covers two async operations: (1) removal of the pattern record and (2) a bulk cleanup that disassociates any URLs already generated from this pattern on all associated site instances in the codebase. Both operations complete before the final settled state is observable.\n", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern is being removed from all associated sites in this codebase.", "description": "Confirmation message that the domain pattern is being removed."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}, "message": "The domain pattern is being removed from all associated sites in this codebase."}}}}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionId}/codebases": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of codebases for a subscription.", "operationId": "getCodebasesBySubscriptionId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-codebases"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_SubscriptionId"}, {"$ref": "#/components/parameters/Codebase_Service_API_Offset"}, {"$ref": "#/components/parameters/Codebase_Service_API_Limit"}, {"$ref": "#/components/parameters/Codebase_Service_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_SubscriptionCodebaseCollection"}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a new codebase for a subscription.", "operationId": "createCodebase", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-codebase"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_SubscriptionId"}], "requestBody": {"$ref": "#/components/requestBodies/Codebase_Service_API_CreateCodebaseRequest"}, "responses": {"200": {"description": "Codebase created", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Codebase created.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}, "message": "Codebase created."}}}}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/sites": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of sites accessible by the user.", "operationId": "getSites", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:list"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_Offset"}, {"$ref": "#/components/parameters/Site_Service_API_Limit"}, {"$ref": "#/components/parameters/Site_Service_API_Filter"}, {"$ref": "#/components/parameters/Site_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_SiteCollection"}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a site for a codebase.", "operationId": "createSite", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:create"}}}, "tags": ["Sites"], "requestBody": {"$ref": "#/components/requestBodies/Site_Service_API_CreateSiteRequest"}, "responses": {"200": {"description": "Site created", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site creation started.", "description": "Confirmation message indicating site creation has been initiated"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/f1a2b3c4-d5e6-7890-abcd-ef1234567890"}, "parent": {"href": "https://api.acquia.com/v3/sites"}}, "message": "Site creation started."}}}}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/sites/{siteId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a site by its ID.", "operationId": "findSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:find"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_Site"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates a site by its ID.", "operationId": "updateSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:update"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "requestBody": {"$ref": "#/components/requestBodies/Site_Service_API_UpdateSiteRequest"}, "responses": {"200": {"description": "Site update accepted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site update started.", "description": "Confirmation message indicating site update has been initiated"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/12345678-1234-1234-1234-123456789012"}}, "message": "Site update started."}}}}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a site by its ID.", "operationId": "deleteSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:delete"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "responses": {"202": {"description": "Site deletion accepted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site deleted.", "description": "Confirmation message indicating the site has been deleted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/550e8400-e29b-41d4-a716-446655440002"}}, "message": "Site deleted."}}}}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/sites/{siteId}/actions/duplicate": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Duplicates a site from another given site.", "operationId": "duplicateSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:duplicate"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "requestBody": {"$ref": "#/components/requestBodies/Site_Service_API_DuplicateSiteRequest"}, "responses": {"202": {"description": "Site duplication started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site duplication started.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/f1a2b3c4-d5e6-7890-abcd-ef1234567890"}, "parent": {"href": "https://api.acquia.com/v3/sites"}}, "message": "Site duplication started."}}}}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/sites/{siteId}/actions/recover": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Recovers a site that is scheduled for deletion", "operationId": "recoverSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:recover"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "responses": {"202": {"description": "Site recovery started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site recovery started.", "description": "Confirmation message indicating the site recovery has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/11111111-1111-1111-1111-111111111111"}, "parent": {"href": "https://api.acquia.com/v3/sites"}}, "message": "Site recovery started."}}}}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/sites/{siteId}/actions/schedule-delete": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Schedules a site for deletion", "operationId": "scheduleDeleteSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:schedule-delete"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "responses": {"202": {"description": "Site deletion scheduled", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site deletion scheduled.", "description": "Confirmation message indicating the site deletion has been scheduled."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/550e8400-e29b-41d4-a716-446655440002"}, "parent": {"href": "https://api.acquia.com/v3/sites"}}, "message": "Site deletion scheduled."}}}}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/sites": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of sites associated with a codebase.", "operationId": "getSitesByCodebaseId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list-sites"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Site_Service_API_Offset"}, {"$ref": "#/components/parameters/Site_Service_API_Limit"}, {"$ref": "#/components/parameters/Site_Service_API_Filter"}, {"$ref": "#/components/parameters/Site_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_SiteCollection"}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionId}/sites": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of sites associated with a subscription.", "operationId": "getSitesBySubscriptionId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-sites"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SubscriptionId"}, {"$ref": "#/components/parameters/Site_Service_API_Offset"}, {"$ref": "#/components/parameters/Site_Service_API_Limit"}, {"$ref": "#/components/parameters/Site_Service_API_Filter"}, {"$ref": "#/components/parameters/Site_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_SiteCollection"}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/sites": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of sites associated with an environment.", "operationId": "getSitesByEnvironmentId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:list-sites"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Site_Service_API_Offset"}, {"$ref": "#/components/parameters/Site_Service_API_Limit"}, {"$ref": "#/components/parameters/Site_Service_API_Filter"}, {"$ref": "#/components/parameters/Site_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_SiteCollection"}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/domains": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getDomainsBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-domains"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of CDN domains for a subscription", "description": "Retrieves a paginated list of CDN domains for the specified subscription.\n\n**Filtering:**\n - Format: `field=value` or `fieldvalue`\n - AND logic: semicolon (`;`) \u2014 `status=active;application_name=my-app`\n - OR logic: comma (`,`) \u2014 `status=active,status=pending`\n\n**Sorting:**\n- Format: Comma-delimited fields. Prefix with `-` for descending.\n- Example: `domain,-created_at`\n", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}, {"$ref": "#/components/parameters/CDN_API_Filter"}, {"$ref": "#/components/parameters/CDN_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_DomainCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/domains/{domainName}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a domain by domain name.", "description": "Retrieves the full details of a CDN domain within a subscription, identified by its fully qualified domain name.", "operationId": "findDomainBySubscriptionUuidAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_DomainName"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_Domain"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/domains/{domainName}/actions/provision": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "provisionDomainBySubscriptionUuidAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:provision-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Provisions a domain for CDN services", "description": "Provisions a domain for CDN services within a subscription by associating it with an environment.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_DomainName"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_ProvisionCdnForDomainRequest"}, "responses": {"202": {"$ref": "#/components/responses/CDN_API_DomainCdnProvisioningAccepted"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/domains/{domainName}/actions/deprovision": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "deprovisionDomainBySubscriptionUuidAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:deprovision-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Deprovisions a domain from CDN services", "description": "Deprovisions a domain for CDN services within a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_DomainName"}], "responses": {"202": {"$ref": "#/components/responses/CDN_API_DomainCdnDeprovisioningAccepted"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/environments/{environmentId}/actions/purge-cdn": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "purgeCdnByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:purge-cdn"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Creates a CDN cache purge request", "description": "Creates a request to purge cached content from the CDN for the specified environment.\n\n**Resource Types** (specified in the request body):\n- `urls` - Purge specific URLs\n- `tags` - Purge by cache tags\n- `domains` - Purge entire domains\n- `everything` - Purge all content in the environment\n", "parameters": [{"$ref": "#/components/parameters/CDN_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_CreatePurgeRequest"}, "responses": {"202": {"$ref": "#/components/responses/CDN_API_PurgeAccepted"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/rulesets": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getSecurityRuleSetsBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-security-rule-sets"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of security rulesets.", "description": "Retrieves security rulesets for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_SecurityRuleSetCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/rulesets/{ruleSetId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "findSecurityRuleSetBySubscriptionUuidAndRuleSetId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-security-rule-set"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a security ruleset.", "description": "Retrieves a security ruleset for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RuleSetId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_SecurityRuleSet"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "put": {"operationId": "updateSecurityRuleSetBySubscriptionUuidAndRuleSetId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:update-security-rule-set"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Updates a security rulesets.", "description": "Updates a security rulesets for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RuleSetId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_UpdateSecurityRuleSetRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_SecurityRuleSetUpdated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/ip-rules": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getIpRulesBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-ip-rules"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of IP rules.", "description": "Retrieves IP rules for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Filter"}, {"$ref": "#/components/parameters/CDN_API_Sort"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRuleCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "post": {"operationId": "createIpRuleBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-ip-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Creates an IP rule.", "description": "Creates an IP rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_CreateIpRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRuleCreated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/ip-rules/{ipRuleId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "findIpRuleBySubscriptionUuidAndIpRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-ip-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves an IP rule.", "description": "Retrieves an IP rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_IpRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRule"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "put": {"operationId": "updateIpRuleBySubscriptionUuidAndIpRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:update-ip-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Updates an IP rule.", "description": "Updates an IP rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_IpRuleId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_UpdateIpRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRuleUpdated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "delete": {"operationId": "deleteIpRuleBySubscriptionUuidAndIpRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:delete-ip-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Deletes an IP rule.", "description": "Deletes an IP rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_IpRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRuleDeleted"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/custom-rules": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getCustomRulesBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-custom-rules"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of custom security rules.", "description": "Retrieves custom security rules for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRuleCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "post": {"operationId": "createCustomRuleBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-custom-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Creates a custom security rule.", "description": "Creates a custom security rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_CreateCustomRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRuleCreated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/custom-rules/{customRuleId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "findCustomRuleBySubscriptionUuidAndCustomRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-custom-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a custom security rule.", "description": "Retrieves a custom security rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_CustomRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRule"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "put": {"operationId": "updateCustomRuleBySubscriptionUuidAndCustomRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:update-custom-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Updates a custom security rule.", "description": "Updates a custom security rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_CustomRuleId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_UpdateCustomRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRuleUpdated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "delete": {"operationId": "deleteCustomRuleBySubscriptionUuidAndCustomRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:delete-custom-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Deletes a custom security rule.", "description": "Deletes a custom security rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_CustomRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRuleDeleted"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/rate-limiting-rules": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getRateLimitingRulesBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-rate-limiting-rules"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of rate limiting rules.", "description": "Retrieves rate limiting rules for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Filter"}, {"$ref": "#/components/parameters/CDN_API_Sort"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRuleCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "post": {"operationId": "createRateLimitingRuleBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-rate-limiting-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Creates a rate limiting rule.", "description": "Creates a rate limiting rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_CreateRateLimitingRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRuleCreated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/rate-limiting-rules/{rateLimitingRuleId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "findRateLimitingRuleBySubscriptionUuidAndRateLimitingRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-rate-limiting-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a rate limiting rule.", "description": "Retrieves a rate limiting rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RateLimitingRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRule"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "put": {"operationId": "updateRateLimitingRuleBySubscriptionUuidAndRateLimitingRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:update-rate-limiting-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Updates a rate limiting rule.", "description": "Updates a rate limiting rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RateLimitingRuleId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_UpdateRateLimitingRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRuleUpdated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "delete": {"operationId": "deleteRateLimitingRuleBySubscriptionUuidAndRateLimitingRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:delete-rate-limiting-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Deletes a rate limiting rule.", "description": "Deletes a rate limiting rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RateLimitingRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRuleDeleted"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/ssh-keys": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Gets a list of SSH keys.", "description": "Gets a list of all SSH keys accessible to the requester. Each key includes\na `user_id` field identifying the owner.\n\nTo look up the owner of an SSH key by fingerprint or public key, apply a\nmandatory filter: `GET /ssh-keys?filter=fingerprint%3D` or\n`GET /ssh-keys?filter=public_key%3D`. The matching key(s) will\ninclude the `user_id` of the owner.\n\nFilterable fields:\n* `label`\n* `fingerprint`\n* `public_key`\n* `user_id`\n\nSortable fields:\n* `label`\n", "operationId": "getSshKeys", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "ssh-keys:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "ssh-key-service"}}, "tags": ["SSH Keys"], "parameters": [{"$ref": "#/components/parameters/SSH_Key_Service_API_Offset"}, {"$ref": "#/components/parameters/SSH_Key_Service_API_Limit"}, {"$ref": "#/components/parameters/SSH_Key_Service_API_Filter"}, {"$ref": "#/components/parameters/SSH_Key_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/SSH_Key_Service_API_SshKeyCollection"}, "400": {"$ref": "#/components/responses/SSH_Key_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/SSH_Key_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/SSH_Key_Service_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/SSH_Key_Service_API_InternalServerError"}}, "security": [{"SSH_Key_Service_API_BearerAuth": []}]}, "post": {"summary": "Installs a new SSH key for the current user.", "description": "Installs a new SSH key for the current user.", "operationId": "createSshKey", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "ssh-keys:create"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "ssh-key-service"}}, "tags": ["SSH Keys"], "requestBody": {"$ref": "#/components/requestBodies/SSH_Key_Service_API_SshKeyRequestBody"}, "responses": {"202": {"description": "Accepted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Added SSH key.", "description": "Confirmation message."}}}]}, "example": {"message": "Added SSH key.", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/981b7910-2fe9-11e9-b210-d663bd873d93"}}}}}}, "400": {"$ref": "#/components/responses/SSH_Key_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/SSH_Key_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/SSH_Key_Service_API_ForbiddenError"}, "409": {"$ref": "#/components/responses/SSH_Key_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/SSH_Key_Service_API_InternalServerError"}}, "security": [{"SSH_Key_Service_API_BearerAuth": []}]}}, "/ssh-keys/{sshKeyId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Gets an SSH key.", "description": "Gets an SSH key by SSH Key ID.", "operationId": "findSshKeyBySshKeyId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "ssh-keys:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "ssh-key-service"}}, "tags": ["SSH Keys"], "parameters": [{"$ref": "#/components/parameters/SSH_Key_Service_API_SshKeyId"}], "responses": {"200": {"$ref": "#/components/responses/SSH_Key_Service_API_SshKey"}, "401": {"$ref": "#/components/responses/SSH_Key_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/SSH_Key_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/SSH_Key_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/SSH_Key_Service_API_InternalServerError"}}, "security": [{"SSH_Key_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes an SSH key.", "description": "Deletes an SSH key by SSH Key ID.", "operationId": "deleteSshKeyBySshKeyId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "ssh-keys:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "ssh-key-service"}}, "tags": ["SSH Keys"], "parameters": [{"$ref": "#/components/parameters/SSH_Key_Service_API_SshKeyId"}], "responses": {"202": {"description": "Accepted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Removed SSH key.", "description": "Confirmation message."}}}]}, "example": {"message": "Removed SSH key.", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/1acbb1a5-e864-4b8e-a3f9-b1ed462afd25"}}}}}}, "401": {"$ref": "#/components/responses/SSH_Key_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/SSH_Key_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/SSH_Key_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/SSH_Key_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/SSH_Key_Service_API_InternalServerError"}}, "security": [{"SSH_Key_Service_API_BearerAuth": []}]}}, "/failover-groups": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of failover groups.", "operationId": "getFailoverGroups", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "description": "Retrieves a collection of failover groups. Use the `filter` parameter to scope results by source environment.\n\nFilter syntax:\n- By source environment: `filter=environment_id:`\n", "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_Offset"}, {"$ref": "#/components/parameters/Failover_Service_API_Limit"}, {"$ref": "#/components/parameters/Failover_Service_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroupCollection"}, "400": {"$ref": "#/components/responses/Failover_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a new failover group.", "operationId": "createFailoverGroup", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:create"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "requestBody": {"$ref": "#/components/requestBodies/Failover_Service_API_CreateFailoverGroupRequest"}, "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_CreateFailoverGroupResponse"}, "400": {"$ref": "#/components/responses/Failover_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/failover-groups/{failoverGroupId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a failover group by ID.", "operationId": "findFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"200": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroup"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a failover group by ID.", "operationId": "deleteFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_DeleteFailoverGroupResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/failover-groups/{failoverGroupId}/actions/failover": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Initiates failover for a failover group.", "operationId": "failoverFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroupFailoverResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/failover-groups/{failoverGroupId}/actions/revert-failover": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Initiates a revert failover for a failover group.", "operationId": "revertFailoverFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:revert-failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroupRevertFailoverResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/failover-groups/{failoverGroupId}/actions/sync": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Initiates a sync for a failover group.", "operationId": "syncFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:sync"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroupSyncResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/multi-region-failover": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the multi-region failover status for an environment.", "operationId": "findMultiRegionFailoverByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-multi-region-failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Failover_Service_API_MultiRegionFailoverStatus"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}, "put": {"summary": "Enables multi-region failover for an environment.", "operationId": "saveMultiRegionFailoverByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update-multi-region-failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Failover_Service_API_SaveMultiRegionFailoverRequest"}, "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_SaveMultiRegionFailoverResponse"}, "400": {"$ref": "#/components/responses/Failover_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}, "delete": {"summary": "Disables multi-region failover for an environment.", "operationId": "deleteMultiRegionFailoverByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:delete-multi-region-failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_EnvironmentId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_DeleteMultiRegionFailoverResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/tags": {"servers": [{"url": "https://cloud.acquia.com/api-framework/demo-php/api"}], "get": {"summary": "Retrieves a collection of tags.", "operationId": "getTags", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "tags:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "tag-service"}}, "tags": ["Tags"], "parameters": [{"$ref": "#/components/parameters/Tag_API_Offset"}, {"$ref": "#/components/parameters/Tag_API_Limit"}, {"$ref": "#/components/parameters/Tag_API_Filter"}, {"$ref": "#/components/parameters/Tag_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Tag_API_TagCollection"}, "401": {"$ref": "#/components/responses/Tag_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Tag_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Tag_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Tag_API_InternalServerError"}}, "security": [{"Tag_API_BearerAuth": []}]}}, "/tags/{tagName}": {"servers": [{"url": "https://cloud.acquia.com/api-framework/demo-php/api"}], "get": {"summary": "Retrieves a tag by tag name.", "operationId": "findTagByTagName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "tags:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "tag-service"}}, "tags": ["Tags"], "parameters": [{"$ref": "#/components/parameters/Tag_API_TagName"}], "responses": {"200": {"$ref": "#/components/responses/Tag_API_Tag"}, "401": {"$ref": "#/components/responses/Tag_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Tag_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Tag_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Tag_API_InternalServerError"}}, "security": [{"Tag_API_BearerAuth": []}]}, "put": {"summary": "Creates a tag if tag does not exist else updates the tag by tag name.", "operationId": "saveTagByTagName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "tags:update"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "tag-service"}}, "tags": ["Tags"], "parameters": [{"$ref": "#/components/parameters/Tag_API_TagName"}], "requestBody": {"$ref": "#/components/requestBodies/Tag_API_SaveTagRequest"}, "responses": {"202": {"description": "Create/Updates a tag", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The tag has been saved.", "description": "Confirmation message that the tag is saved"}}}]}, "example": {"_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-3"}}, "message": "The tag has been saved."}}}}, "400": {"$ref": "#/components/responses/Tag_API_ValidationError"}, "401": {"$ref": "#/components/responses/Tag_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Tag_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Tag_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Tag_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Tag_API_InternalServerError"}}, "security": [{"Tag_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a tag by tag name.", "operationId": "deleteTagByTagName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "tags:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "tag-service"}}, "tags": ["Tags"], "parameters": [{"$ref": "#/components/parameters/Tag_API_TagName"}], "responses": {"200": {"description": "Deletes a tag", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The tag has been deleted.", "description": "Confirmation message that the tag is deleted"}}}]}, "example": {"_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-1"}}, "message": "The tag has been deleted."}}}}, "401": {"$ref": "#/components/responses/Tag_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Tag_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Tag_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Tag_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Tag_API_InternalServerError"}}, "security": [{"Tag_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/environments": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of environments for the specified codebase.", "operationId": "getEnvironmentsByCodebaseId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list-environments"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_FilterableEnvironmentCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/environments/{environmentId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves details for an environment by codebase and environment ID.", "operationId": "findEnvironmentByCodebaseIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:find-environment"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Environment"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/sites/{siteId}/environments": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of environments for the specified site.", "operationId": "getEnvironmentsBySiteId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:list-environments"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_EnvironmentCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/private-networks/{privateNetworkId}/environments": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of environments associated with the specified private network.", "operationId": "getEnvironmentsByPrivateNetworkId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "private-networks:list-environments"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_PrivateNetworkId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_EnvironmentCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Get environment details.", "operationId": "findEnvironmentByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Environment"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Modifies properties settings for the specified environment.", "operationId": "updateEnvironmentByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_UpdateEnvironmentRequest"}, "responses": {"202": {"description": "Environment update started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Environment update started.", "description": "Confirmation message that the environment update has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}, "message": "Environment update started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/actions/enable-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Enable Environment Protection mode.", "operationId": "enableEnvironmentProtectionModeByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:enable-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Enable protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Environment protection mode enabled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Environment protection mode enabled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/actions/disable-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Disable Environment Protection mode.", "operationId": "disableEnvironmentProtectionModeByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:disable-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Disable protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Environment protection mode disabled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Environment protection mode disabled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/actions/clear-caches": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Clears caches for the specified environment.", "operationId": "clearEnvironmentCachesByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:clear-caches"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_ClearCachesRequest"}, "responses": {"202": {"description": "Cache clear started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Varnish domain cache clear started.", "description": "Confirmation message that the cache clear has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}, "message": "Varnish domain cache clear started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/eips": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of egress IPs for the specified environment.", "operationId": "getEgressIpsByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:list-egress-ips"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_EgressIpCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/private-network": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the private network associated with the specified environment.", "operationId": "findPrivateNetworkByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-private-network"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_PrivateNetwork"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Associates the specified environment with a private network.", "operationId": "saveEnvironmentPrivateNetworkByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:associate-private-network"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_AssociatePrivateNetworkRequest"}, "responses": {"202": {"description": "Private network association started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Associating private network started.", "description": "Confirmation message that the association has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/private-network"}}, "message": "Associating private network started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Disassociates the specified environment from its private network.", "operationId": "deleteEnvironmentPrivateNetworkByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:disassociate-private-network"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Private network disassociation started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Disassociating environment from private network started.", "description": "Confirmation message that the disassociation has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/private-network"}}, "message": "Disassociating environment from private network started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/trusted-proxies": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the trusted proxy configuration for the specified environment.", "operationId": "findTrustedProxiesByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-trusted-proxies"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_TrustedProxies"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates the trusted proxy configuration for the specified environment.", "operationId": "updateTrustedProxiesByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update-trusted-proxies"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_UpdateTrustedProxiesRequest"}, "responses": {"200": {"description": "Trusted proxy configuration updated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Trusted Proxies updated successfully.", "description": "Confirmation message that the configuration has been updated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/trusted-proxies"}}, "message": "Trusted Proxies updated successfully."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/deployments": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of deployments for the specified environment.", "operationId": "getDeploymentsByEnvironmentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:list-deployments"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Filter"}, {"$ref": "#/components/parameters/Environment_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DeploymentCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "post": {"summary": "Starts a deployment for the specified environment.", "operationId": "createDeploymentByEnvironmentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:create-deployment"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_StartDeploymentRequest"}, "responses": {"202": {"description": "Deployment started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Deployment started.", "description": "Confirmation message that the deployment has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}}, "message": "Deployment started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/code-deploy": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the code deploy concurrency setting for the environment.", "operationId": "findCodeDeployByEnvironmentId", "tags": ["Code Deploys"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-code-deploy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_CodeDeploy"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates the code deploy concurrency setting for the environment.", "operationId": "updateCodeDeployByEnvironmentId", "tags": ["Code Deploys"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update-code-deploy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_UpdateCodeDeployRequest"}, "responses": {"200": {"description": "Code deploy concurrency setting updated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Code deploy settings updated successfully.", "description": "Confirmation message that the concurrency setting has been updated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/code-deploy"}}, "message": "Code deploy settings updated successfully."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/site-instances": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Associates a site with the specified environment.", "operationId": "createSiteInstanceByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:create-site-instance"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_CreateSiteInstanceRequest"}, "responses": {"202": {"description": "Site instance creation started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance creation started.", "description": "Confirmation message that site association has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance creation started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/site-instances/actions/reorder": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Updates the priority order of site instances for the environment.", "operationId": "reorderSiteInstancesByEnvironmentId", "tags": ["Site Instances"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:reorder-site-instances"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_ReorderSiteInstancesRequest"}, "responses": {"200": {"description": "Site instances reordered successfully", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instances reordered successfully.", "description": "Confirmation message that the site instances have been reordered."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/site-instances"}}, "message": "Site instances reordered successfully."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Get site instance details.", "operationId": "findSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_SiteInstance"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Dissociates a site and environment with no grace period.", "operationId": "deleteSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Site instance deletion started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance deletion started.", "description": "Confirmation message that the deletion has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance deletion started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/files": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Copies files from one environment to another for the specified site instance.", "operationId": "copySiteInstanceFilesBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:copy-files"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_CopySiteInstanceFilesRequest"}, "responses": {"202": {"description": "File copy started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "File copy started.", "description": "Confirmation message that the file copy has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "File copy started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/cancel": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Dissociates a site and environment.", "operationId": "cancelSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:cancel"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Site instance cancellation started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance cancellation started.", "description": "Confirmation message that the cancellation has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance cancellation started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/enable-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Enable Site Instance Protection mode.", "operationId": "enableSiteInstanceProtectionModeBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:enable-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Enable protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance protection mode enabled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance protection mode enabled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/disable-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Disable Site Instance Protection mode.", "operationId": "disableSiteInstanceProtectionModeBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:disable-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Disable protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance protection mode disabled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance protection mode disabled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/inherit-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Inherit Site Instance Protection mode.", "operationId": "inheritSiteInstanceProtectionModeBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:inherit-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Inherit protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance protection mode inherited from environment.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance protection mode inherited from environment."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/recover": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Recovers a site instance that is scheduled for deletion", "operationId": "recoverSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:recover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Site instance restoration started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance restoration started.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}, "parent": {"href": "https://api.acquia.com/v3/site-instances"}}, "message": "Site instance restoration started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/schedule-delete": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Schedules a site instance for deletion.", "operationId": "scheduleDeleteSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:schedule-delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Site instance deletion scheduled", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance deletion scheduled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}, "parent": {"href": "https://api.acquia.com/v3/site-instances"}}, "message": "Site instance deletion scheduled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/domains": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of domains for the specified site instance.", "operationId": "getDomainsBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:list-domains"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Filter"}, {"$ref": "#/components/parameters/Environment_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DomainCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/domains/{domainName}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves details for the specified domain on a site instance.", "operationId": "findDomainBySiteIdAndEnvironmentIdAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Domain"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Adds a domain to the specified site instance.", "operationId": "saveDomainBySiteIdAndEnvironmentIdAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:update-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}], "responses": {"202": {"description": "Domain addition started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Domain addition started.", "description": "Confirmation message that the domain addition has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com"}}, "message": "Domain addition started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Removes a domain from the specified site instance.", "operationId": "deleteDomainBySiteIdAndEnvironmentIdAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:delete-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}], "responses": {"202": {"description": "Domain removal started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Domain removal started.", "description": "Confirmation message that the domain removal has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com"}}, "message": "Domain removal started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/domains/{domainName}/status": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the DNS status for the specified domain on a site instance.", "operationId": "findDomainStatusBySiteIdAndEnvironmentIdAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-domain-status"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DomainStatus"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves database details for the specified site instance.", "operationId": "findDatabaseBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-database"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Database"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "post": {"summary": "Copies a database from another environment to the specified site instance.", "operationId": "copySiteInstanceDatabaseBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:copy-database"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_CopySiteInstanceDatabaseRequest"}, "responses": {"202": {"description": "Database copy started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Database copy started.", "description": "Confirmation message that the database copy has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database"}}, "message": "Database copy started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database/connection": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves database connection credentials for the specified site instance.", "operationId": "findDatabaseConnectionBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-database-connection"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DatabaseConnection"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database/backups": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of database backups for the specified site instance.", "operationId": "getDatabaseBackupsBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:list-database-backups"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Filter"}, {"$ref": "#/components/parameters/Environment_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DatabaseBackupCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a database backup for the specified site instance.", "operationId": "createDatabaseBackupBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:create-database-backup"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Database backup creation started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Database backup started.", "description": "Confirmation message that the database backup has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups"}}, "message": "Database backup started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database/backups/{backupId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves details for the specified database backup.", "operationId": "findDatabaseBackupBySiteIdAndEnvironmentIdAndBackupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-database-backup"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_BackupId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DatabaseBackup"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes the specified database backup.", "operationId": "deleteDatabaseBackupBySiteIdAndEnvironmentIdAndBackupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:delete-database-backup"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_BackupId"}], "responses": {"202": {"description": "Database backup deletion started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Database backup deletion started.", "description": "Confirmation message that the deletion has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}}, "message": "Database backup deletion started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database/backups/{backupId}/actions/restore": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Restores the specified database backup to the site instance.", "operationId": "restoreDatabaseBackupBySiteIdAndEnvironmentIdAndBackupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:restore-database-backup"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_BackupId"}], "responses": {"202": {"description": "Database backup restore started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Database restore started.", "description": "Confirmation message that the restore has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}}, "message": "Database restore started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/deployments/{deploymentId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the status of a deployment by deployment ID.", "operationId": "findDeploymentByDeploymentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "deployments:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_DeploymentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Deployment"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/deployments/{deploymentId}/actions/stop": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Stops a deployment by sending a stop request.", "operationId": "stopDeploymentByDeploymentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "deployments:stop"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_DeploymentId"}], "responses": {"202": {"description": "Deployment stop initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Deployment stop initiated.", "description": "Confirmation message that the deployment stop has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}}, "message": "Deployment stop initiated."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/deployments/{deploymentId}/actions/terminate": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Terminates a deployment immediately.", "operationId": "terminateDeploymentByDeploymentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "deployments:terminate"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_DeploymentId"}], "responses": {"202": {"description": "Deployment termination is initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Deployment termination initiated.", "description": "Confirmation message that the deployment termination has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}}, "message": "Deployment termination initiated."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/domain-patterns": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of domain patterns for the specified environment.", "operationId": "getDomainPatternsByEnvironmentId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:list-domain-patterns"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DomainPatternCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a domain pattern for the specified environment.", "operationId": "createDomainPatternByEnvironmentId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:create-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_CreateDomainPatternRequest"}, "responses": {"202": {"description": "Domain pattern creation initiated.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern is being applied to all associated sites in this environment.", "description": "Confirmation message that the domain pattern is being applied."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}, "message": "The domain pattern is being applied to all associated sites in this environment."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/domain-patterns/{patternId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a domain pattern by environment ID and pattern ID.", "operationId": "findDomainPatternByEnvironmentIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_PatternId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DomainPattern"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates a domain pattern for the specified environment.", "operationId": "updateDomainPatternByEnvironmentIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_PatternId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_UpdateDomainPatternRequest"}, "responses": {"202": {"description": "Domain pattern update initiated.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern update is being applied to all associated sites in this environment.", "description": "Confirmation message that the domain pattern update is being applied."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}, "message": "The domain pattern update is being applied to all associated sites in this environment."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a domain pattern for the specified environment. Engineering role only.", "operationId": "deleteDomainPatternByEnvironmentIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:delete-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_PatternId"}], "responses": {"202": {"description": "Domain pattern deletion initiated. The 202 covers two async operations: (1) removal of the pattern record and (2) a bulk cleanup that disassociates any URLs already generated from this pattern on all associated site instances in the environment. Both operations complete before the final settled state is observable.\n", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern is being removed from all associated sites in this environment.", "description": "Confirmation message that the domain pattern is being removed."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}, "message": "The domain pattern is being removed from all associated sites in this environment."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionId}/sso-domains": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "createSsoDomainBySubscriptionId", "summary": "Create a new domain for federated SSO.", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-sso-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SubscriptionId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_CreateSsoDomain"}, "responses": {"202": {"description": "Domain creation accepted. The domain is being added to your subscription. To complete verification, add the provided DNS TXT record and call the verify action.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Domain creation has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}}, "message": "Domain creation has been accepted."}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "get": {"summary": "Return a list of domains for a subscription.", "operationId": "getSsoDomainsBySubscriptionId", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-sso-domains"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SubscriptionId"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Offset"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Limit"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Sort"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_SsoDomainCollection"}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionId}/identity-providers": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "createIdentityProviderBySubscriptionId", "summary": "Create a new Identity Provider.", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-identity-provider"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SubscriptionId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_CreateIdentityProvider"}, "responses": {"202": {"description": "Identity Provider creation initiated. The Identity Provider is being provisioned. Poll the Identity Provider resource to check when it becomes active.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Identity Provider creation has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f"}}, "message": "Identity Provider creation has been accepted."}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "get": {"summary": "Return a list of Identity Providers for a subscription.", "operationId": "getIdentityProvidersBySubscriptionId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-identity-providers"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SubscriptionId"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Offset"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Limit"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Sort"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_IdentityProviderCollection"}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/sso-domains": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Return a list of all accessible domains.", "operationId": "getSsoDomains", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sso-domains:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_Offset"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Limit"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Sort"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_SsoDomainCollection"}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/sso-domains/{domainId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Return details about a specific domain.", "operationId": "findSsoDomainBySsoDomainId", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sso-domains:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SsoDomainId"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_SsoDomain"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "delete": {"summary": "Delete a domain.", "operationId": "deleteSsoDomainBySsoDomainId", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sso-domains:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SsoDomainId"}], "responses": {"202": {"description": "Domain deletion accepted. The domain is being deleted.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Domain deletion has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}}, "message": "Domain deletion has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/sso-domains/{domainId}/actions/verify": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Verify domain ownership via DNS TXT record.", "operationId": "verifySsoDomainBySsoDomainId", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sso-domains:verify"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SsoDomainId"}], "responses": {"202": {"description": "Domain verification process initiated. The system will validate the DNS TXT record to confirm domain ownership. Poll the domain resource and check `health.code` to track progress: `202` in progress, `200` verified, `404` record not found.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Domain verification has been accepted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}}, "message": "Domain verification has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Return a list of all accessible Identity Providers.", "operationId": "getIdentityProviders", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_Offset"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Limit"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Sort"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_IdentityProviderCollection"}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers/{identityProviderId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Return details about a specific Identity Provider.", "operationId": "findIdentityProviderByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_IdentityProvider"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "put": {"summary": "Updates an Identity Provider.", "operationId": "updateIdentityProviderByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:update"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_UpdateIdentityProvider"}, "responses": {"202": {"description": "Identity Provider update initiated. The Identity Provider configuration changes are being applied. Poll the Identity Provider resource to verify the changes.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Identity Provider update has been accepted."}}}]}, "example": {"message": "Identity Provider update has been accepted.", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f"}}}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "delete": {"summary": "Deletes an Identity Provider.", "operationId": "deleteIdentityProviderByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"202": {"description": "Identity Provider deletion accepted. The Identity Provider is being deleted.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Identity Provider deletion has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f"}}, "message": "Identity Provider deletion has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers/{identityProviderId}/policies/sso": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Get the SSO policy for an Identity Provider.", "operationId": "findIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:find-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"200": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_SsoPolicy"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}, "example": {"status": "disabled", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "_embedded": {"domains": [{"domain_id": "dom-456", "domain": "acme.com", "subscription_id": "sub-123", "health": {"code": "200", "summary": "Verified", "details": "The DNS TXT record has been confirmed and the domain is verified."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.com", "value": "abc123def456", "health": {"code": "200", "summary": "Verified", "details": "The TXT record at _acquia-challenge.acme.com matches the expected value."}}, "verified_at": "2026-04-15T10:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}, "identity_providers": {"href": "https://api.acquia.com/v3/identity-providers?filter=domain_id%3Ddom-456"}}}, {"domain_id": "dom-789", "domain": "acme.corp", "subscription_id": "sub-123", "health": {"code": "200", "summary": "Verified", "details": "The DNS TXT record has been confirmed and the domain is verified."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.corp", "value": "xyz789abc123", "health": {"code": "200", "summary": "Verified", "details": "The TXT record at _acquia-challenge.acme.corp matches the expected value."}}, "verified_at": "2026-04-20T09:00:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-789"}, "identity_providers": {"href": "https://api.acquia.com/v3/identity-providers?filter=domain_id%3Ddom-789"}}}]}}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "post": {"summary": "Create the SSO policy for an Identity Provider.", "operationId": "createIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:create-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_CreateSsoPolicyRequest"}, "responses": {"202": {"description": "SSO policy creation initiated. The policy is being activated. Poll the SSO policy resource to verify activation.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy creation has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy creation has been accepted."}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "put": {"summary": "Update the SSO policy for an Identity Provider.", "operationId": "updateIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:update-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_UpdateSsoPolicyRequest"}, "responses": {"202": {"description": "SSO policy update initiated. The policy changes are being applied. Poll the SSO policy resource to verify the changes.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy update has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy update has been accepted."}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "delete": {"summary": "Delete the SSO policy for an Identity Provider.", "operationId": "deleteIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:delete-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"202": {"description": "SSO policy deletion initiated. The policy is being deactivated. Poll the Identity Provider resource to verify the policy has been removed.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy deletion has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy deletion has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers/{identityProviderId}/policies/sso/actions/enable": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Enable the SSO policy for an Identity Provider.", "operationId": "enableIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:enable-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"202": {"description": "SSO policy enablement initiated. The policy is being enabled and will enforce domains. Poll the SSO policy resource to verify the status change.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy enablement has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy enablement has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers/{identityProviderId}/policies/sso/actions/disable": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Disable the SSO policy for an Identity Provider.", "operationId": "disableIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:disable-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"202": {"description": "SSO policy disablement initiated. The policy is being disabled and will no longer enforce domains. Poll the SSO policy resource to verify the status change.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy disablement has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy disablement has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}}, "components": {"parameters": {"Codebase_Service_API_codebaseId": {"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, "Codebase_Service_API_patternId": {"$ref": "#/components/parameters/Codebase_Service_API_PatternId"}, "Codebase_Service_API_referenceName": {"$ref": "#/components/parameters/Codebase_Service_API_ReferenceName"}, "Codebase_Service_API_subscriptionId": {"$ref": "#/components/parameters/Codebase_Service_API_SubscriptionId"}, "Codebase_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Codebase_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Codebase_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Codebase_Service_API_CodebaseId": {"name": "codebaseId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the codebase."}, "Codebase_Service_API_ReferenceName": {"name": "referenceName", "in": "path", "required": true, "description": "Name of the git reference (branch or tag). Slashes must be URL-encoded as `%2F` in the path (e.g., `feature%2Fbranch-name`).", "schema": {"type": "string", "pattern": "^[^/]+$"}}, "Codebase_Service_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Codebase_Service_API_PatternId": {"name": "patternId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the domain pattern."}, "Codebase_Service_API_SubscriptionId": {"name": "subscriptionId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the subscription"}, "Site_Service_API_siteId": {"$ref": "#/components/parameters/Site_Service_API_SiteId"}, "Site_Service_API_codebaseId": {"$ref": "#/components/parameters/Site_Service_API_CodebaseId"}, "Site_Service_API_subscriptionId": {"$ref": "#/components/parameters/Site_Service_API_SubscriptionId"}, "Site_Service_API_environmentId": {"$ref": "#/components/parameters/Site_Service_API_EnvironmentId"}, "Site_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Site_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Site_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Site_Service_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Site_Service_API_SiteId": {"name": "siteId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "example": "12345678-1234-1234-1234-123456789012"}, "description": "Unique identifier for the site"}, "Site_Service_API_CodebaseId": {"name": "codebaseId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "example": "550e8400-e29b-41d4-a716-446655441212"}, "description": "Unique identifier for the codebase"}, "Site_Service_API_SubscriptionId": {"name": "subscriptionId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "example": "550e8300-e29b-41d4-a716-446655441212"}, "description": "Unique identifier for the subscription"}, "Site_Service_API_EnvironmentId": {"name": "environmentId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "example": "0ebce493-9d09-479d-a9a8-138a206fa687"}, "description": "Unique identifier for the environment"}, "CDN_API_SubscriptionUuid": {"name": "subscriptionUuid", "in": "path", "required": true, "description": "The unique identifier of the subscription.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_DomainName": {"name": "domainName", "in": "path", "required": true, "description": "The fully qualified domain name.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9]?(\\.[a-zA-Z]{2,})+$"}}, "CDN_API_EnvironmentId": {"name": "environmentId", "in": "path", "required": true, "description": "The unique identifier of the environment.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_RuleSetId": {"name": "ruleSetId", "in": "path", "required": true, "description": "The unique identifier of the security rule set.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_IpRuleId": {"name": "ipRuleId", "in": "path", "required": true, "description": "The unique identifier of the IP rule.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_CustomRuleId": {"name": "customRuleId", "in": "path", "required": true, "description": "The unique identifier of the custom security rule.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_RateLimitingRuleId": {"name": "rateLimitingRuleId", "in": "path", "required": true, "description": "The unique identifier of the rate limiting rule.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "CDN_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "CDN_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "CDN_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "SSH_Key_Service_API_SshKeyId": {"name": "sshKeyId", "in": "path", "description": "The SSH key's unique identifier.", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "example": "981b7910-2fe9-11e9-b210-d663bd873d93"}, "SSH_Key_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "SSH_Key_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "SSH_Key_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals (default if no operator specified)\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `label=primary` - Filter by label equals primary\n- `fingerprint=@SHA256` - Filter by fingerprint containing \"SHA256\"\n- `label=primary;fingerprint=@SHA256` - label is primary AND fingerprint contains SHA256\n- `label=primary,label=backup` - label is primary OR backup\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "label=primary;fingerprint=@SHA256"}, "SSH_Key_Service_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Failover_Service_API_environmentId": {"$ref": "#/components/parameters/Failover_Service_API_EnvironmentId"}, "Failover_Service_API_failoverGroupId": {"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}, "Failover_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Failover_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Failover_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Failover_Service_API_FailoverGroupId": {"name": "failoverGroupId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the failover group."}, "Failover_Service_API_EnvironmentId": {"name": "environmentId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the environment."}, "Tag_API_tagName": {"$ref": "#/components/parameters/Tag_API_TagName"}, "Tag_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Tag_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Tag_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Tag_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Tag_API_TagName": {"name": "tagName", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the tag."}, "Environment_Service_API_environmentId": {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, "Environment_Service_API_siteId": {"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, "Environment_Service_API_deploymentId": {"$ref": "#/components/parameters/Environment_Service_API_DeploymentId"}, "Environment_Service_API_codebaseId": {"$ref": "#/components/parameters/Environment_Service_API_CodebaseId"}, "Environment_Service_API_domainName": {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}, "Environment_Service_API_backupId": {"$ref": "#/components/parameters/Environment_Service_API_BackupId"}, "Environment_Service_API_privateNetworkId": {"$ref": "#/components/parameters/Environment_Service_API_PrivateNetworkId"}, "Environment_Service_API_patternId": {"$ref": "#/components/parameters/Environment_Service_API_PatternId"}, "Environment_Service_API_CodebaseId": {"name": "codebaseId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Codebase identifier"}, "Environment_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Environment_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Environment_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Environment_Service_API_EnvironmentId": {"name": "environmentId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the environment."}, "Environment_Service_API_SiteId": {"name": "siteId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the site."}, "Environment_Service_API_PrivateNetworkId": {"name": "privateNetworkId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Private network identifier"}, "Environment_Service_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Environment_Service_API_DomainName": {"name": "domainName", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?(\\.[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?)*$"}, "description": "The fully-qualified domain name (e.g., www.example.com)."}, "Environment_Service_API_BackupId": {"name": "backupId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Database backup identifier"}, "Environment_Service_API_DeploymentId": {"name": "deploymentId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the deployment."}, "Environment_Service_API_PatternId": {"name": "patternId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the domain pattern."}, "Federated_Authentication_API_SubscriptionId": {"name": "subscriptionId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the subscription."}, "Federated_Authentication_API_SsoDomainId": {"name": "domainId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the domain."}, "Federated_Authentication_API_IdentityProviderId": {"name": "identityProviderId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the identity provider."}, "Federated_Authentication_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Federated_Authentication_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Federated_Authentication_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Federated_Authentication_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}}, "schemas": {"Codebase_Service_API_Codebase": {"type": "object", "properties": {"id": {"type": "string", "description": "Unique identifier for the codebase"}, "label": {"type": "string", "description": "Human-readable label for the codebase"}, "region": {"type": "string", "description": "AWS region of the codebase"}, "vcs_url": {"type": "string", "format": "uri", "description": "VCS repository URL"}, "repository_id": {"type": "string", "description": "VCS repository identifier"}, "created_at": {"type": "string", "format": "date-time", "description": "Creation timestamp"}, "updated_at": {"type": "string", "format": "date-time", "description": "Last update timestamp"}, "description": {"type": "string", "description": "Description of the codebase"}, "flags": {"type": "object", "properties": {"is_active": {"type": "boolean", "description": "Whether the codebase is active"}, "is_meo": {"type": "boolean", "description": "Whether the codebase is MEO"}}, "required": ["is_active", "is_meo"], "description": "Feature flags for the codebase"}, "hash": {"type": "string", "description": "Codebase hash"}, "applications_total": {"type": "integer", "description": "Total number of applications linked to this codebase"}}, "required": ["id", "label", "region", "vcs_url", "repository_id", "created_at", "updated_at", "flags", "hash", "applications_total"]}, "Codebase_Service_API_CodebaseReference": {"type": "object", "properties": {"id": {"type": "string", "description": "Unique identifier for the reference"}, "name": {"type": "string", "description": "Name of the git reference"}, "type": {"type": "string", "enum": ["branch", "tag"], "description": "Type of the git reference"}}, "required": ["id", "name", "type"]}, "Codebase_Service_API_DomainPattern": {"type": "object", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the domain pattern."}, "pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])(?=.*\\[environment-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The domain pattern string, optionally followed by a single path segment (e.g. [site-name].[environment-name].acme.com/app). Both [site-name] and [environment-name] tokens are mandatory at codebase level. Domain rules (enforced in service layer): \u2264 200 chars excluding token placeholders, at least 2 components (must contain .), no IP addresses, no forbidden suffixes (acquia-sites.com, hosting.acquia.com), no wildcards, no leading/trailing dot or hyphen, no consecutive dots, no query string or fragment. Path rules: optional, max 255 chars, must match ^/[A-Za-z0-9._-]+$, max 1 segment. DNS label limit: 63 chars after token substitution ([site-name] \u2264 14 chars, [environment-name] \u2264 10 chars). One pattern per codebase.\n", "example": "[site-name].[environment-name].acme.com"}}, "required": ["id", "pattern"]}, "Codebase_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Codebase_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Codebase_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Codebase_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Codebase_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Codebase_Service_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Codebase_Service_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Codebase_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_Message": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Codebase_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Site_Service_API_Site": {"type": "object", "description": "A Site resource", "properties": {"id": {"type": "string", "description": "The unique identifier of the site", "pattern": "^[a-zA-Z0-9-]+$", "example": "12345678-1234-1234-1234-123456789012"}, "name": {"type": "string", "description": "The machine name of the site. Must start with a lowercase letter and contain only lowercase letters and numbers.", "minLength": 1, "maxLength": 14, "pattern": "^[a-z][a-z0-9]*$", "example": "mysite"}, "label": {"type": "string", "description": "The human-readable label of the site", "minLength": 1, "maxLength": 50, "example": "My Site 1"}, "description": {"type": "string", "description": "A description of the site", "maxLength": 512, "example": "A production site for the marketing team."}, "codebase_id": {"type": "string", "description": "The unique identifier of the codebase this site belongs to", "pattern": "^[a-zA-Z0-9-]+$", "example": "550e8400-e29b-41d4-a716-446655441210"}, "status": {"type": "string", "description": "The current lifecycle status of the site. ready indicates the site is active and operational. marked-for-deletion indicates the site has been scheduled for deletion and can still be recovered.\n", "enum": ["ready", "marked-for-deletion"], "example": "ready"}, "delete_at": {"type": "string", "format": "date-time", "description": "ISO 8601 datetime indicating when the site is scheduled for deletion. Only present when status is marked-for-deletion.", "example": "2025-06-15T00:00:00Z"}}, "required": ["id", "name", "label", "codebase_id", "status"]}, "Site_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Site_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Site_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Site_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Site_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Site_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Site_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Site_Service_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Site_Service_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Site_Service_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Site_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Site_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Site_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Site_Service_API_Message": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Site_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Site_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "CDN_API_Domain": {"type": "object", "description": "CDN domain resource.", "properties": {"domain": {"type": "string", "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9]?(\\.[a-zA-Z]{2,})+$", "description": "The fully qualified domain name."}, "subscription_uuid": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "The unique identifier of the subscription the domain belongs to."}, "environment_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "The environment identifier associated with the domain."}, "application_name": {"type": "string", "description": "The name of the application associated with the domain."}, "status": {"type": "string", "description": "The current status of the domain.", "enum": ["connecting-to-edge", "domain-validation-pending", "ready-for-dns-repointing", "configuration-failed", "configured"]}, "ownership_validation_cname": {"type": "string", "description": "The CNAME record that must be created on the domain's DNS to validate ownership."}, "bandwidth_usage_tb": {"type": "number", "format": "float", "description": "The bandwidth usage for the domain in terabytes."}, "created_at": {"type": "string", "format": "date-time", "description": "The timestamp when the domain was created."}, "updated_at": {"type": "string", "format": "date-time", "description": "The timestamp when the domain was last updated."}}, "required": ["domain", "subscription_uuid", "environment_id", "status", "application_name", "ownership_validation_cname", "bandwidth_usage_tb", "created_at", "updated_at"]}, "CDN_API_SecurityRuleSet": {"type": "object", "properties": {"id": {"type": "integer", "minimum": 1, "description": "The unique identifier of the security ruleset."}, "name": {"type": "string", "description": "The display name of the security ruleset."}, "is_enabled": {"type": "boolean", "description": "Indicates whether the security ruleset is enabled."}, "description": {"type": "string", "description": "The description of the security ruleset."}, "type": {"type": "string", "description": "The type of the security ruleset.", "enum": ["owasp", "acquia-managed"]}}, "required": ["id", "name", "is_enabled"]}, "CDN_API_IpRule": {"type": "object", "properties": {"id": {"type": "integer", "minimum": 1, "description": "The unique identifier of the IP rule."}, "display_name": {"type": "string", "description": "The display name of the IP rule."}, "action": {"type": "string", "enum": ["block", "allow"], "description": "The action applied when the rule matches."}, "description": {"type": "string", "description": "The description of the IP rule."}, "ips": {"type": "array", "description": "The IPs or CIDR blocks associated with the rule.", "items": {"type": "string", "description": "An IP address or CIDR block."}}, "created_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was created."}, "updated_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was last updated."}}, "required": ["id", "display_name", "action", "ips", "created_at", "updated_at"]}, "CDN_API_CustomRule": {"type": "object", "properties": {"id": {"type": "integer", "minimum": 1, "description": "The unique identifier of the custom security rule."}, "display_name": {"type": "string", "description": "The display name of the custom security rule."}, "action": {"type": "string", "enum": ["block", "allow", "alert"], "description": "The action applied when the rule matches."}, "priority": {"type": "integer", "minimum": 1, "description": "The priority order for the rule. Lower values are evaluated first.\nPriorities must be unique within a subscription \u2014 creating or\nupdating a rule with a priority already in use replaces the\nexisting rule at that priority.\n"}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "paths": {"type": "array", "description": "The paths the rule applies to.", "items": {"type": "string", "description": "A path pattern."}}, "mapped_domains_count": {"type": "integer", "description": "The number of domains the rule is mapped to."}, "targets": {"type": "array", "description": "Conditions that must match for the rule to fire.", "items": {"oneOf": [{"description": "Range match for IP or ASN ranges.", "type": "object", "required": ["attribute", "criteria", "value"], "additionalProperties": false, "properties": {"attribute": {"type": "string", "description": "The request attribute the rule inspects.", "enum": ["source-ip", "asn"]}, "criteria": {"type": "string", "description": "How `value` is compared against `attribute`.", "enum": ["range"]}, "value": {"type": "object", "description": "Range bounds for IP or ASN ranges.", "additionalProperties": false, "required": ["from", "to"], "properties": {"from": {"type": "string", "description": "The start of the range."}, "to": {"type": "string", "description": "The end of the range."}}}}}, {"description": "Value-list match for non-header, non-query attributes.", "type": "object", "required": ["attribute", "criteria", "value"], "additionalProperties": false, "properties": {"attribute": {"type": "string", "description": "The request attribute the rule inspects.", "enum": ["source-ip", "country", "method", "path", "asn"]}, "criteria": {"type": "string", "description": "How `value` is compared against `attribute`.", "enum": ["equals", "contains", "regex"]}, "value": {"type": "object", "description": "A list of candidate values combined with OR.", "additionalProperties": false, "required": ["values"], "properties": {"values": {"type": "array", "description": "The list of values.", "items": {"type": "string", "description": "A value."}}}}}}, {"description": "Key-value match for header or query-string attributes.", "type": "object", "required": ["attribute", "criteria", "value"], "additionalProperties": false, "properties": {"attribute": {"type": "string", "description": "The request attribute the rule inspects.", "enum": ["header", "query-string"]}, "criteria": {"type": "string", "description": "How `value` is compared against `attribute`.", "enum": ["equals", "contains", "regex"]}, "value": {"type": "object", "description": "Key-value matchers for header or query-string attributes.", "additionalProperties": false, "required": ["key_value_pairs"], "properties": {"key_value_pairs": {"type": "array", "description": "The list of key-value pairs.", "items": {"type": "object", "description": "A key-value pair.", "required": ["key", "value"], "properties": {"key": {"type": "string", "description": "The header or query-parameter name."}, "value": {"type": "string", "description": "The expected value."}}}}}}}}]}}, "created_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was created."}, "updated_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was last updated."}}, "required": ["id", "display_name", "action", "priority", "domains", "paths", "created_at", "updated_at", "targets"]}, "CDN_API_RateLimitingRule": {"type": "object", "properties": {"id": {"type": "integer", "minimum": 1, "description": "The unique identifier of the rate limiting rule."}, "display_name": {"type": "string", "description": "The display name of the rate limiting rule."}, "action": {"type": "string", "enum": ["block", "alert"], "description": "The action applied when the rule matches."}, "rate_limit_per_minute": {"type": "string", "enum": ["lenient", "moderate", "strict"], "description": "The rate limit category applied to the rule."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "created_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was created."}, "updated_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was last updated."}}, "required": ["id", "display_name", "action", "rate_limit_per_minute", "domains", "created_at", "updated_at"]}, "CDN_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "CDN_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/CDN_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/CDN_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "CDN_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "CDN_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/CDN_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/CDN_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/CDN_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "CDN_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/CDN_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "CDN_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/CDN_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "CDN_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "CDN_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "CDN_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "CDN_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "CDN_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "CDN_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "CDN_API_Message": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "CDN_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"]}, "SSH_Key_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "SSH_Key_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "SSH_Key_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}, {"properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}, {"properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}]}, "SSH_Key_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}, {"properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering."}}, "additionalProperties": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}}}]}, "SSH_Key_Service_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}, {"properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting."}}, "additionalProperties": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}}}]}, "SSH_Key_Service_API_SshKey": {"allOf": [{"type": "object", "required": ["id", "label", "public_key", "fingerprint", "created_at", "user_id"], "description": "Details an SSH key.", "properties": {"id": {"type": "string", "description": "The unique identifier of the SSH key.", "pattern": "^[a-zA-Z0-9-]+$"}, "label": {"type": "string", "description": "The human-readable key label."}, "public_key": {"type": "string", "description": "The public key.", "minLength": 64}, "fingerprint": {"type": "string", "description": "The public key fingerprint.", "pattern": "^[A-Za-z0-9:+/=.-]+$"}, "created_at": {"type": "string", "format": "date-time", "description": "The key creation date."}, "user_id": {"type": "string", "description": "The unique identifier of the user who owns this SSH key.", "pattern": "^[a-zA-Z0-9-]+$"}}}, {"$ref": "#/components/schemas/SSH_Key_Service_API_HalItem"}]}, "SSH_Key_Service_API_SshKeys": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalCollection"}, {"$ref": "#/components/schemas/SSH_Key_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/SSH_Key_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/SSH_Key_Service_API_SortedCollection"}, {"type": "object", "description": "A collection of SSH keys.", "properties": {"_embedded": {"type": "object", "description": "A collection of SSH keys matching the request parameters.", "properties": {"items": {"type": "array", "items": {"$ref": "#/components/schemas/SSH_Key_Service_API_SshKey"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "SSH_Key_Service_API_Message": {"allOf": [{"type": "object", "required": ["message"], "properties": {"message": {"type": "string", "description": "The human-friendly confirmation of the operation."}}}, {"$ref": "#/components/schemas/SSH_Key_Service_API_HalItem"}]}, "SSH_Key_Service_API_ValidationError": {"type": "object", "required": ["error", "message"], "description": "A validation error.", "properties": {"error": {"type": "string", "description": "The error summary."}, "message": {"type": "object", "description": "The validation error message keyed by its field or group name.", "additionalProperties": {"type": "string"}}}}, "SSH_Key_Service_API_Error": {"type": "object", "required": ["error", "message"], "properties": {"error": {"type": "string", "description": "The error summary."}, "message": {"type": "string", "description": "The long description for the returned error."}}}, "SSH_Key_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Failover_Service_API_FailoverGroup": {"type": "object", "properties": {"id": {"type": "string", "description": "Unique identifier for the failover group.", "example": "b2c3d4e5-f6a7-8901-bcde-f12345678901"}, "name": {"type": "string", "description": "The name of the failover group.", "example": "Primary Failover Group"}, "status": {"type": "string", "enum": ["creating", "normal", "failed-over", "failing-over", "error", "deleting", "deleted"], "description": "The current status of the failover group.", "example": "normal"}, "pairs": {"type": "array", "description": "The list of failover pairs belonging to this failover group.", "items": {"$ref": "#/components/schemas/Failover_Service_API_FailoverPair"}}}, "required": ["id", "name", "status", "pairs"]}, "Failover_Service_API_FailoverPair": {"type": "object", "properties": {"service_name": {"type": "string", "description": "The name of the service for this failover pair.", "example": "my-application-service"}, "primary_id": {"type": "string", "description": "The ID of the primary resource in the failover pair.", "example": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"}, "failover_id": {"type": "string", "description": "The UUID of the failover resource in the failover pair.", "example": "f1e2d3c4-b5a6-7890-fedc-ba9876543210"}}, "required": ["service_name", "primary_id", "failover_id"]}, "Failover_Service_API_MultiRegionFailoverStatus": {"type": "object", "properties": {"is_enabled": {"type": "boolean", "description": "Whether multi-region failover is enabled for the environment."}, "failover_group_id": {"type": "string", "description": "The identifier of the failover group associated with the environment."}, "is_traffic_failed_over": {"type": "boolean", "description": "Whether traffic has been failed over to the secondary region."}}, "required": ["is_enabled"]}, "Failover_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Failover_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Failover_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Failover_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Failover_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Failover_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Failover_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Failover_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Failover_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Failover_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Failover_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Failover_Service_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Failover_Service_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Failover_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Failover_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Failover_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Failover_Service_API_Message": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Failover_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "Failover_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Tag_API_Tag": {"type": "object", "properties": {"name": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "minLength": 1, "maxLength": 255, "description": "The name of the tag"}, "color": {"type": "string", "pattern": "^#((?:[a-f0-9]{3}){1,2})$", "minLength": 4, "maxLength": 7, "description": "The color of the tag"}}, "required": ["name", "color"]}, "Tag_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Tag_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Tag_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Tag_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Tag_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Tag_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Tag_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Tag_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Tag_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Tag_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Tag_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Tag_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Tag_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Tag_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Tag_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Tag_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Tag_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Tag_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Tag_API_Message": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Tag_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Tag_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "Environment_Service_API_SiteInstance": {"type": "object", "description": "Site Instance properties", "properties": {"site_id": {"type": "string", "description": "The unique identifier of the site", "pattern": "^[a-zA-Z0-9-]+$"}, "environment_id": {"type": "string", "description": "The unique identifier of the environment", "pattern": "^[a-zA-Z0-9-]+$"}, "status": {"type": "string", "description": "The current status of the site instance", "enum": ["active", "creating", "create-failed", "updating", "update-failed", "deleting", "deleted", "delete-failed"]}, "health_status": {"type": "object", "description": "Health status information for the site instance", "properties": {"code": {"type": "string", "description": "Health status code"}, "summary": {"type": "string", "description": "Summary of the health status"}, "details": {"type": "string", "description": "Detailed health status information"}}, "required": ["code", "summary", "details"]}, "domains": {"type": "array", "description": "List of domains associated with the site instance", "items": {"type": "string"}}, "deployment_order": {"type": ["integer", "null"], "description": "The order in which this site instance is deployed relative to others.", "example": 1}, "delete_at": {"type": ["string", "null"], "format": "date-time", "description": "The scheduled deletion date-time for this site instance, if set."}, "date_marked_for_deletion": {"type": ["string", "null"], "format": "date-time", "description": "The date-time when this site instance was marked for deletion."}, "protection_mode": {"type": ["object", "null"], "description": "The current protection mode of the site instance", "properties": {"is_enabled": {"type": "boolean", "description": "Indicates whether the protection mode is enabled for the site instance"}, "is_inherited": {"type": "boolean", "description": "Indicates whether the protection mode is inherited from the environment"}}, "required": ["is_enabled", "is_inherited"]}}, "required": ["site_id", "environment_id", "status", "health_status", "domains"]}, "Environment_Service_API_Environment": {"type": "object", "description": "Environment properties", "properties": {"id": {"type": "string", "description": "The unique identifier of the environment", "pattern": "^[a-zA-Z0-9-]+$"}, "name": {"type": "string", "description": "The machine name of the environment"}, "label": {"type": "string", "description": "The human-readable label of the environment"}, "description": {"type": "string", "description": "A description of the environment"}, "status": {"type": "string", "description": "The current status of the environment", "enum": ["normal", "allocated", "launching", "killed", "cancelled", "stopped"]}, "flags": {"type": "object", "description": "Environment configuration flags", "additionalProperties": {"type": "boolean"}}, "properties": {"type": "object", "description": "Environment PHP and server properties", "properties": {"version": {"type": "string", "description": "PHP version"}, "max_execution_time": {"type": "integer", "description": "Maximum execution time in seconds"}, "memory_limit": {"type": "integer", "description": "Memory limit in MB"}, "apcu": {"type": "integer", "description": "APCu cache size in MB"}, "client_max_body_size": {"type": "integer", "description": "Maximum client body size in MB"}, "max_input_vars": {"type": "integer", "description": "Maximum number of input variables"}, "max_post_size": {"type": "integer", "description": "Maximum POST size in MB"}, "memcached_limit": {"type": "integer", "description": "Memcached limit in MB"}, "upload_max_filesize": {"type": "integer", "description": "Maximum upload file size in MB"}, "operating_system": {"type": "string", "description": "Operating system codename"}}}, "reference": {"type": "string", "description": "The code reference (branch, tag, or commit) deployed to this environment"}, "code_switch_status": {"type": "string", "description": "The status of the Switch Code action", "enum": ["IDLE", "IN_PROGRESS"]}, "ssh_url": {"type": "string", "format": "uri", "description": "The SSH connection string for accessing this environment"}}, "required": ["id", "name", "label", "status", "flags", "properties", "reference", "code_switch_status", "ssh_url"]}, "Environment_Service_API_EmbeddedCodebase": {"type": "object", "description": "Embedded codebase resource", "properties": {"id": {"type": "string", "description": "The unique identifier of the codebase"}}, "required": ["id"]}, "Environment_Service_API_Deployment": {"type": "object", "description": "Deployment properties", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the deployment."}, "environment_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Identifier of the environment this deployment belongs to."}, "status": {"type": "string", "description": "Current status of the deployment.", "enum": ["waiting", "received", "started", "done", "failed", "error", "killed"]}, "code_reference": {"type": "string", "description": "The code reference (e.g. branch or tag) deployed."}, "run_hooks": {"type": "boolean", "description": "Whether deployment hooks were run."}, "hooks_argument": {"type": ["string", "null"], "description": "Additional arguments passed to deployment hooks."}, "created_at": {"type": "string", "format": "date-time", "description": "Timestamp when the deployment was created."}, "started_at": {"type": ["string", "null"], "format": "date-time", "description": "Timestamp when the deployment started."}, "completed_at": {"type": ["string", "null"], "format": "date-time", "description": "Timestamp when the deployment completed."}, "sender_id": {"type": ["string", "null"], "description": "Identifier of the user or system that initiated the deployment."}, "logs": {"type": ["string", "null"], "description": "Deployment log output."}}, "required": ["id", "environment_id", "status", "code_reference", "run_hooks", "created_at"]}, "Environment_Service_API_CodeDeploy": {"type": "object", "properties": {"concurrency": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Maximum number of concurrent code deploys allowed for the environment."}}, "required": ["concurrency"]}, "Environment_Service_API_Domain": {"type": "object", "description": "Domain properties", "properties": {"name": {"type": "string", "description": "The domain name."}, "is_managed": {"type": "boolean", "description": "Whether the domain is managed by Acquia."}}, "required": ["name", "is_managed"]}, "Environment_Service_API_DomainStatus": {"type": "object", "description": "Domain DNS status properties", "properties": {"hostname": {"type": "string", "description": "The domain name."}, "site_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Identifier of the site this domain belongs to."}, "environment_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Identifier of the environment this domain belongs to."}, "ip_addresses": {"type": "array", "description": "List of IP addresses resolving for this domain.", "items": {"type": "string"}}, "cnames": {"type": "array", "description": "List of CNAME records resolving for this domain.", "items": {"type": "string"}}, "flags": {"type": "object", "description": "Status flags for the domain.", "properties": {"default": {"type": "boolean", "description": "Whether this is the default domain."}, "active": {"type": "boolean", "description": "Whether the domain is active."}, "dns_resolves": {"type": "boolean", "description": "Whether the domain DNS resolves correctly."}, "acquia_hosted": {"type": "boolean", "description": "Whether the domain is hosted on Acquia infrastructure."}}, "required": ["default", "active", "dns_resolves", "acquia_hosted"]}}, "required": ["hostname", "site_id", "environment_id", "ip_addresses", "cnames", "flags"]}, "Environment_Service_API_Database": {"type": "object", "description": "Database properties", "properties": {"database_name": {"type": "string", "description": "The name of the database."}, "database_role": {"type": "string", "description": "The role of the database (e.g. the site username)."}}, "required": ["database_name", "database_role"]}, "Environment_Service_API_DatabaseConnection": {"type": "object", "description": "Database connection credential properties", "properties": {"db_host": {"type": "string", "description": "The database host."}, "name": {"type": "string", "description": "The database name."}, "password": {"type": "string", "description": "The database password."}, "user_name": {"type": "string", "description": "The database username."}, "ssh_host": {"type": "string", "description": "The SSH host for tunneling to the database."}}, "required": ["db_host", "name", "password", "user_name", "ssh_host"]}, "Environment_Service_API_DatabaseBackup": {"type": "object", "description": "Database backup properties", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the database backup."}, "database_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Identifier of the database this backup belongs to."}, "created_at": {"type": "string", "format": "date-time", "description": "Timestamp when the backup was created."}, "type": {"type": "string", "enum": ["DAILY", "ON_DEMAND"], "description": "The type of backup."}}, "required": ["id", "database_id", "created_at", "type"]}, "Environment_Service_API_EgressIp": {"type": "object", "description": "Egress IP properties", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the egress IP."}, "status": {"type": "string", "description": "Current status of the egress IP."}, "ipv4": {"type": "string", "description": "The IPv4 address."}, "ipv6": {"type": ["string", "null"], "description": "The IPv6 address, if assigned."}, "flags": {"type": "object", "description": "Status flags for the egress IP.", "additionalProperties": {"type": "boolean"}}}, "required": ["id", "status", "ipv4", "flags"]}, "Environment_Service_API_TrustedProxies": {"type": "object", "description": "Trusted proxy configuration properties", "properties": {"cidrs_ipv4": {"type": "array", "description": "List of trusted IPv4 CIDR blocks.", "items": {"type": "string"}}, "cidrs_ipv6": {"type": "array", "description": "List of trusted IPv6 CIDR blocks.", "items": {"type": "string"}}, "associated_cdns": {"type": "object", "description": "Map of CDN configurations associated with this environment, keyed by CDN name.", "additionalProperties": {"type": "object", "properties": {"label": {"type": "string", "description": "Display label for the CDN."}, "is_enabled": {"type": "boolean", "description": "Whether the CDN is enabled."}}, "required": ["label", "is_enabled"]}}}, "required": ["cidrs_ipv4", "cidrs_ipv6", "associated_cdns"]}, "Environment_Service_API_PrivateNetwork": {"type": "object", "description": "Private network reference properties", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the private network."}, "label": {"type": ["string", "null"], "description": "Human-readable label for the private network."}}, "required": ["id"]}, "Environment_Service_API_DomainPattern": {"type": "object", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the domain pattern."}, "pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The domain pattern string, optionally followed by a single path segment (e.g. [site-name].acme.com/app). The [site-name] token is mandatory; [environment-name] is optional at environment level. Domain rules (enforced in service layer): \u2264 200 chars excluding token placeholders, at least 2 components (must contain .), no IP addresses, no forbidden suffixes (acquia-sites.com, hosting.acquia.com), no wildcards, no leading/trailing dot or hyphen, no consecutive dots, no query string or fragment. Path rules: optional, max 255 chars, must match ^/[A-Za-z0-9._-]+$, max 1 segment. DNS label limit: 63 chars after token substitution ([site-name] \u2264 14 chars). One pattern per environment.\n", "example": "[site-name].acme.com"}}, "required": ["id", "pattern"]}, "Environment_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Environment_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Environment_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Environment_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Environment_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Environment_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Environment_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Environment_Service_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Environment_Service_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Environment_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Environment_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Environment_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Environment_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Environment_Service_API_Message": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Environment_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "Environment_Service_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Federated_Authentication_API_IdentityProvider": {"type": "object", "properties": {"identity_provider_id": {"type": "string", "description": "Unique identifier for the identity provider."}, "label": {"type": "string", "description": "The name of the Identity Provider."}, "subscription_id": {"type": "string", "description": "Unique identifier for the subscription that the Identity Provider belongs to."}, "idp_entity_id": {"type": "string", "format": "uri", "description": "The Identity Provider Entity ID."}, "sp_entity_id": {"type": "string", "format": "uri", "description": "The Service Provider Entity ID."}, "sso_url": {"type": "string", "format": "uri", "description": "The Single Sign-On URL for the Identity Provider."}, "certificate": {"type": "string", "description": "The X.509 certificate used for SAML authentication."}, "created_at": {"type": "string", "format": "date-time", "description": "Timestamp when the Identity Provider was created."}}, "required": ["identity_provider_id", "label", "subscription_id", "idp_entity_id", "sp_entity_id", "sso_url", "certificate", "created_at"]}, "Federated_Authentication_API_SsoDomain": {"type": "object", "properties": {"domain_id": {"type": "string", "description": "Unique identifier for the domain."}, "domain": {"type": "string", "pattern": "^[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?(\\.[a-zA-Z]{2,})+$", "description": "The domain name (e.g., \"acme.com\")."}, "subscription_id": {"type": "string", "description": "Unique identifier for the subscription that the domain belongs to."}, "health": {"type": "object", "description": "The overall verification health of the domain. Uses the same code semantics as the platform email domain-verification system: `200` verified, `202` verification pending or in progress, `404` DNS record not found or could not be validated.", "properties": {"code": {"type": "string", "enum": ["200", "202", "404"], "description": "Machine-readable verification status code. `200` \u2014 verified. `202` \u2014 verification pending or in progress; retry after propagation. `404` \u2014 DNS TXT record not found or does not match expected value."}, "summary": {"type": "string", "description": "Short human-readable label for the verification state (e.g., \"Verified\", \"Verification pending\", \"Missing DNS record\")."}, "details": {"type": "string", "description": "Actionable explanation of the current state. For `404`, describes what was checked and what the customer should do next."}}, "required": ["code", "summary", "details"]}, "verification_record": {"type": "object", "description": "DNS TXT record the customer must publish to verify domain ownership.", "properties": {"type": {"type": "string", "const": "TXT", "description": "DNS record type."}, "host": {"type": "string", "description": "DNS record host name."}, "value": {"type": "string", "description": "Expected DNS record value."}, "health": {"type": "object", "description": "Verification health specific to this DNS record. Anchors the failure reason to the exact record the customer needs to fix, matching the per-record health pattern used in platform email domain verification.", "properties": {"code": {"type": "string", "enum": ["200", "202", "404"], "description": "`200` \u2014 record found and value matches. `202` \u2014 check in progress. `404` \u2014 record not found or value does not match."}, "summary": {"type": "string", "description": "Short human-readable label for this record's verification state."}, "details": {"type": "string", "description": "Actionable explanation; for `404`, states what was checked and what to fix."}}, "required": ["code", "summary", "details"]}}, "required": ["type", "host", "value", "health"]}, "verified_at": {"type": "string", "format": "date-time", "description": "Timestamp when the domain was successfully verified. Present only when `health.code` is `200`."}}, "required": ["domain_id", "domain", "subscription_id", "health", "verification_record"]}, "Federated_Authentication_API_SsoPolicy": {"type": "object", "description": "SSO policy that enforces an Identity Provider for specific domains.", "properties": {"status": {"type": "string", "enum": ["enabled", "disabled"], "default": "disabled", "description": "The status of the SSO policy. When enabled, the policy enforces SSO for the specified domains. Defaults to disabled on creation."}, "_embedded": {"type": "object", "description": "Embedded resources for the SSO policy.", "properties": {"domains": {"type": "array", "description": "The SSO domains enforced by this policy, each with a self link back to the authoritative SsoDomain resource.", "items": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_SsoDomain"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}}}, "required": ["domains"]}}, "required": ["status", "_embedded"]}, "Federated_Authentication_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Federated_Authentication_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Federated_Authentication_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Federated_Authentication_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Federated_Authentication_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Federated_Authentication_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Federated_Authentication_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Federated_Authentication_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Federated_Authentication_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Federated_Authentication_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Federated_Authentication_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Federated_Authentication_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Federated_Authentication_API_Message": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Federated_Authentication_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}}, "responses": {"Codebase_Service_API_Codebase": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Codebase"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}, "example": {"id": "a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4", "label": "my-codebase", "region": "us-east-1", "vcs_url": "https://github.com/acquia/my-codebase.git", "repository_id": "12345678", "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-15T10:30:00Z", "description": "Main production codebase", "flags": {"is_active": true, "is_meo": false}, "hash": "abc123def456", "applications_total": 3, "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}}}}}, "Codebase_Service_API_CodebaseCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_FilteredCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Codebase"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"codebase_collection": {"summary": "Codebase collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases?limit=10&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/codebases?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases?limit=10{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/codebases?limit=10&offset=0{&filter}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 10, "offset": 0}, "_embedded": {"items": [{"id": "a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4", "label": "my-codebase", "region": "us-east-1", "vcs_url": "https://github.com/acquia/my-codebase.git", "repository_id": "12345678", "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-15T10:30:00Z", "description": "Main production codebase", "flags": {"is_active": true, "is_meo": false}, "hash": "abc123def456", "applications_total": 3, "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}}]}}}}}}}, "Codebase_Service_API_CodebaseReference": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_CodebaseReference"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}, "example": {"id": "ref-123", "name": "main", "type": "branch", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references/main"}}}}}}, "Codebase_Service_API_CodebaseReferenceCollection": {"description": "A list of git references for the codebase", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_CodebaseReference"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references?limit=10&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references?limit=10{&offset}", "templated": true}}, "count": 2, "total": 2, "pagination": {"total": 2, "limit": 10, "offset": 0}, "_embedded": {"items": [{"id": "ref-123", "name": "main", "type": "branch", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references/main"}}}, {"id": "ref-456", "name": "v1.0.0", "type": "tag", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references/v1.0.0"}}}]}}}}}, "Codebase_Service_API_DomainPattern": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_DomainPattern"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}, "example": {"id": "22222222-2222-2222-2222-222222222222", "pattern": "[site-name].[environment-name].acme.com", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}}}}, "links": {"self": {"operationId": "findDomainPatternByCodebaseIdAndPatternId", "parameters": {"codebaseId": "$request.path.codebaseId", "patternId": "$request.path.patternId"}}}}, "Codebase_Service_API_DomainPatternCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_DomainPattern"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"domain_pattern_collection": {"summary": "Domain pattern collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns"}, "limit": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?limit=25{&offset}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?limit=25&offset=0{&sort}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 25, "offset": 0}, "_embedded": {"items": [{"id": "22222222-2222-2222-2222-222222222222", "pattern": "[site-name].[environment-name].acme.com", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}}]}}}, "domain_pattern_collection_empty": {"summary": "Empty domain pattern collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns"}, "limit": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?limit=25{&offset}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?limit=25&offset=0{&sort}", "templated": true}}, "count": 0, "total": 0, "pagination": {"total": 0, "limit": 25, "offset": 0}, "_embedded": {"items": []}}}}}}}, "Codebase_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Codebase_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Codebase_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Codebase_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Codebase_Service_API_SubscriptionCodebaseCollection": {"description": "A list of codebases for the subscription", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_FilteredCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Codebase"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"subscription_codebase_collection": {"summary": "Subscription codebase collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/sub-12345/codebases?limit=10&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/sub-12345/codebases?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/sub-12345/codebases?limit=10{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/sub-12345/codebases?limit=10&offset=0{&filter}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 10, "offset": 0}, "_embedded": {"items": [{"id": "a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4", "label": "my-codebase", "region": "us-east-1", "vcs_url": "https://github.com/acquia/my-codebase.git", "repository_id": "12345678", "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-15T10:30:00Z", "description": "Main production codebase", "flags": {"is_active": true, "is_meo": false}, "hash": "abc123def456", "applications_total": 3, "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}}]}}}}}}}, "Codebase_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Codebase_Service_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Site_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Site_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Site_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Site_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Site_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Site_Service_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Site_Service_API_Site": {"description": "Site details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Site"}, {"$ref": "#/components/schemas/Site_Service_API_HalItem"}, {"type": "object", "properties": {"_links": {"properties": {"self": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}, "codebase": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/f1a2b3c4-d5e6-7890-abcd-ef1234567890"}, "codebase": {"href": "https://api.acquia.com/v3/codebases/a9b8c7d6-e5f4-3210-abcd-ef9876543210"}}, "id": "f1a2b3c4-d5e6-7890-abcd-ef1234567890", "name": "mysite", "label": "My Site", "description": "This is a description of my site.", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210", "status": "ready"}}}, "links": {"self": {"operationId": "findSiteBySiteId", "parameters": {"siteId": "$request.path.siteId"}}}}, "Site_Service_API_SiteCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Site_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Site_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/Site_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Site"}, {"$ref": "#/components/schemas/Site_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"site_collection": {"summary": "Site collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/sites?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/sites?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/sites?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/sites?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/sites?limit=2&offset=2"}}, "count": 2, "total": 4, "pagination": {"total": 4, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "f1a2b3c4-d5e6-7890-abcd-ef1234567890", "name": "mysite", "label": "My Site", "description": "A description of my site.", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210", "status": "ready", "_links": {"self": {"href": "https://api.acquia.com/v3/sites/f1a2b3c4-d5e6-7890-abcd-ef1234567890"}}}, {"id": "e2b3c4d5-f6a7-8901-bcde-f12345678901", "name": "anothersite", "label": "Another Site", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210", "status": "marked-for-deletion", "delete_at": "2025-01-01T00:00:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sites/e2b3c4d5-f6a7-8901-bcde-f12345678901"}}}]}}}}}}}, "CDN_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "CDN_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "CDN_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "CDN_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "CDN_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "CDN_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "CDN_API_DomainCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"$ref": "#/components/schemas/CDN_API_FilteredCollection"}, {"$ref": "#/components/schemas/CDN_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Domain"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"domains_response": {"summary": "Domain collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2&offset=2"}}, "count": 2, "total": 50, "pagination": {"total": 50, "limit": 2, "offset": 0}, "_embedded": {"items": [{"domain": "example.com", "subscription_uuid": "12345678-1234-1234-1234-123456789012", "environment_id": "0c3f0f5f-5727-4838-9459-2d90ee1cf7c1", "application_name": "my-application", "status": "configured", "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-20T15:45:00Z", "ownership_validation_cname": "_acme-challenge.example.com", "bandwidth_usage_tb": 1.25, "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/example.com"}}}, {"domain": "test.example.org", "subscription_uuid": "12345678-1234-1234-1234-123456789012", "environment_id": "1d4f1f6f-6838-5949-a560-3e01ff2cf8d2", "application_name": "test-application", "status": "connecting-to-edge", "created_at": "2024-01-18T08:15:00Z", "ownership_validation_cname": "_acme-challenge.example.com", "bandwidth_usage_tb": 1.25, "updated_at": "2024-01-18T08:15:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/test.example.org"}}}]}}}}}}}, "CDN_API_Domain": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Domain"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"domain": "example.com", "subscription_uuid": "12345678-1234-1234-1234-123456789012", "environment_id": "0c3f0f5f-5727-4838-9459-2d90ee1cf7c1", "application_name": "my-application", "status": "configured", "ownership_validation_cname": "_acme-challenge.example.com", "bandwidth_usage_tb": 1.25, "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-20T15:45:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/example.com"}}}}}, "links": {"self": {"operationId": "findDomainBySubscriptionUuidAndDomainName", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "domainName": "$request.path.domainName"}}}}, "CDN_API_DomainCdnProvisioningAccepted": {"description": "Accepted - Provisioning in progress", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain provisioning has been started.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/example.com"}}, "message": "The domain provisioning has been started."}}}}, "CDN_API_DomainCdnDeprovisioningAccepted": {"description": "Accepted - Deprovisioning in progress", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain deprovisioning has been started.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/example.com"}}, "message": "The domain deprovisioning has been started."}}}}, "CDN_API_PurgeAccepted": {"description": "Accepted - Purge request submitted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The purge request has been submitted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/0c3f0f5f-5727-4838-9459-2d90ee1cf7c1/actions/purge-cdn"}}, "message": "The purge request has been submitted."}}}}, "CDN_API_SecurityRuleSet": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_SecurityRuleSet"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"id": 1, "name": "OWASP Top 10", "is_enabled": true, "description": "OWASP Top 10 security ruleset", "type": "owasp", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets/1"}}}}}, "links": {"self": {"operationId": "findSecurityRuleSetBySubscriptionUuidAndRuleSetId", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "ruleSetId": "$request.path.ruleSetId"}}}}, "CDN_API_SecurityRuleSetCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_SecurityRuleSet"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"security_rule_sets_response": {"summary": "Security rulesets collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets?limit=2{&offset}", "templated": true}}, "count": 2, "total": 5, "pagination": {"total": 5, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": 123, "name": "OWASP Core Ruleset", "is_enabled": true, "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets/123"}}}, {"id": 456, "name": "Bot Protection", "is_enabled": false, "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets/456"}}}]}}}}}}}, "CDN_API_SecurityRuleSetUpdated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The security ruleset has been updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets/123"}}, "message": "The security ruleset has been updated."}}}}, "CDN_API_IpRule": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_IpRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"id": 101, "display_name": "Block office VPN", "action": "allow", "description": "Allow traffic from the office VPN", "ips": ["203.0.113.0/24"], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}}}}, "links": {"self": {"operationId": "findIpRuleBySubscriptionUuidAndIpRuleId", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "ipRuleId": "$request.path.ipRuleId"}}}}, "CDN_API_IpRuleCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"$ref": "#/components/schemas/CDN_API_FilteredCollection"}, {"$ref": "#/components/schemas/CDN_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_IpRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"ip_rules_response": {"summary": "IP rules collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?offset=2&limit=2"}}, "count": 2, "total": 5, "pagination": {"total": 5, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": 101, "display_name": "Block office IPs", "action": "block", "description": "Blocks office IP ranges.", "ips": ["192.0.2.10", "198.51.100.0/24"], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}}, {"id": 102, "display_name": "Allow support", "action": "allow", "description": "Allows support traffic.", "ips": ["203.0.113.5"], "created_at": "2026-05-02T08:15:00Z", "updated_at": "2026-05-11T13:45:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/102"}}}]}}}}}}}, "CDN_API_IpRuleCreated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The IP rule has been created.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}, "message": "The IP rule has been created."}}}}, "CDN_API_IpRuleUpdated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The IP rule has been updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}, "message": "The IP rule has been updated."}}}}, "CDN_API_IpRuleDeleted": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The IP rule has been deleted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}, "message": "The IP rule has been deleted."}}}}, "CDN_API_CustomRuleCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_CustomRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"custom_rules_response": {"summary": "Custom rules collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules?limit=2{&offset}", "templated": true}}, "count": 2, "total": 5, "pagination": {"total": 5, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": 301, "display_name": "Block bad bots", "action": "block", "priority": 1, "domains": ["example.com"], "paths": ["/api/*"], "targets": [{"attribute": "source-ip", "criteria": "range", "value": {"from": "10.0.0.0", "to": "10.0.0.255"}}], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}}, {"id": 302, "display_name": "Alert login scans", "action": "alert", "priority": 2, "domains": ["shop.example.com"], "paths": ["/login"], "targets": [{"attribute": "path", "criteria": "equals", "value": {"values": ["/login"]}}], "created_at": "2026-05-02T08:15:00Z", "updated_at": "2026-05-11T13:45:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/302"}}}]}}}}}}}, "CDN_API_CustomRule": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_CustomRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"id": 301, "display_name": "Block bad bots", "action": "block", "priority": 1, "domains": ["example.com"], "paths": ["/api/*"], "targets": [{"attribute": "source-ip", "criteria": "range", "value": {"from": "10.0.0.0", "to": "10.0.0.255"}}, {"attribute": "header", "criteria": "equals", "value": {"key_value_pairs": [{"key": "User-Agent", "value": "BadBot/1.0"}]}}], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}}}}, "links": {"self": {"operationId": "findCustomRuleBySubscriptionUuidAndCustomRuleId", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "customRuleId": "$request.path.customRuleId"}}}}, "CDN_API_CustomRuleCreated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The custom security rule has been created.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}, "message": "The custom security rule has been created."}}}}, "CDN_API_CustomRuleDeleted": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The custom security rule has been deleted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}, "message": "The custom security rule has been deleted."}}}}, "CDN_API_RateLimitingRuleCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"$ref": "#/components/schemas/CDN_API_FilteredCollection"}, {"$ref": "#/components/schemas/CDN_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_RateLimitingRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"rate_limiting_rules_response": {"summary": "Rate limiting rules collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2&offset=2"}}, "count": 2, "total": 4, "pagination": {"total": 4, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": 501, "display_name": "Rate Rule 1", "action": "alert", "rate_limit_per_minute": "lenient", "domains": ["example.com"], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}}, {"id": 502, "display_name": "Rate Rule 2", "action": "block", "rate_limit_per_minute": "strict", "domains": ["shop.example.com"], "created_at": "2026-05-02T08:15:00Z", "updated_at": "2026-05-11T13:45:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/502"}}}]}}}}}}}, "CDN_API_RateLimitingRule": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_RateLimitingRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"id": 501, "display_name": "Rate Rule 1", "action": "alert", "rate_limit_per_minute": "lenient", "domains": ["example.com"], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}}}}, "links": {"self": {"operationId": "findRateLimitingRuleBySubscriptionUuidAndRateLimitingRuleId", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "rateLimitingRuleId": "$request.path.rateLimitingRuleId"}}}}, "CDN_API_RateLimitingRuleCreated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The rate limiting rule has been created.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}, "message": "The rate limiting rule has been created."}}}}, "CDN_API_RateLimitingRuleUpdated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The rate limiting rule has been updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}, "message": "The rate limiting rule has been updated."}}}}, "CDN_API_RateLimitingRuleDeleted": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The rate limiting rule has been deleted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}, "message": "The rate limiting rule has been deleted."}}}}, "CDN_API_CustomRuleUpdated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The custom security rule has been updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}, "message": "The custom security rule has been updated."}}}}, "SSH_Key_Service_API_SshKeyCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_SshKeys"}, "examples": {"ssh_keys": {"summary": "SSH key collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/ssh-keys?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2&offset=2"}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "1acbb1a5-e864-4b8e-a3f9-b1ed462afd25", "label": "primary", "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQChwPHzTTDKDpSbpa2+d22LcbQmsw92eLsUK3Fmei1fiGDkd34NsYCN8m7lsi3NbvdMS83CtPQPWiCveYPzFs1/hHc4PYj8opD2CNnr5iWVVbyaulCYHCgVv4aB/ojcexg8q483A4xJeF15TiCr/gu34rK6ucTvC/tn/rCwJBudczvEwt0klqYwv8Cl/ytaQboSuem5KgSjO3lMrb6CWtfSNhE43ZOw+UBFBqxIninN868vGMkIv9VY34Pwj54rPn/ItQd6Ef4B0KHHaGmzK0vfP+AK7FxNMoHnj3iYT33KZNqtDozdn5tYyH/bThPebEtgqUn+/w5l6wZIC/8zzvls/127ngHk+jNa0PlNyS2TxhPUK4NaPHIEnnrlp07JEYC4ImcBjaYCWAdcTcUkcJjwZQkN4bGmyO9cjICH98SdLD/HxqzTHeaYDbAX/Hu9HfaBb5dXLWsjw3Xc6hoVnUUZbMQyfgb0KgxDLh92eNGxJkpZiL0VDNOWCxDWsNpzwhLNkLqCvI6lyxiLaUzvJAk6dPaRhExmCbU1lDO2eR0FdSwC1TEhJOT9eDIK1r2hztZKs2oa5FNFfB/IFHVWasVFC9N2h/r/egB5zsRxC9MqBLRBq95NBxaRSFng6ML5WZSw41Qi4C/JWVm89rdj2WqScDHYyAdwyyppWU4T5c9Fmw== example@example.com", "fingerprint": "SHA256:7a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8g9h0i1j2k3l4m5n6o7p8q9r0s1", "created_at": "2024-10-01T12:30:00Z", "user_id": "a47ac10b-58cc-4372-a567-0e02b2c3d479", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/1acbb1a5-e864-4b8e-a3f9-b1ed462afd25"}}}, {"id": "2bcbb1a5-e864-4b8e-a3f9-b1ed462afd26", "label": "backup", "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFf2T1I1d8T1B9Q1b8pS6m2xvY3i5q8sNnU5oQwY5vS9 example@example.com", "fingerprint": "SHA256:9b8c7d6e5f4a3b2c1d0e9f8a7b6c5d4e3f2a1b0c9d8e7f6a5b4c3d2e1f0a9b8", "created_at": "2024-10-02T09:15:00Z", "user_id": "b58bd21c-69dd-5483-b678-1f13c3d4e580", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/2bcbb1a5-e864-4b8e-a3f9-b1ed462afd26"}}}]}}}}}}}, "SSH_Key_Service_API_SshKey": {"description": "OK", "content": {"application/hal+json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_SshKey"}, "example": {"id": "1acbb1a5-e864-4b8e-a3f9-b1ed462afd25", "label": "primary", "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQChwPHzTTDKDpSbpa2+d22LcbQmsw92eLsUK3Fmei1fiGDkd34NsYCN8m7lsi3NbvdMS83CtPQPWiCveYPzFs1/hHc4PYj8opD2CNnr5iWVVbyaulCYHCgVv4aB/ojcexg8q483A4xJeF15TiCr/gu34rK6ucTvC/tn/rCwJBudczvEwt0klqYwv8Cl/ytaQboSuem5KgSjO3lMrb6CWtfSNhE43ZOw+UBFBqxIninN868vGMkIv9VY34Pwj54rPn/ItQd6Ef4B0KHHaGmzK0vfP+AK7FxNMoHnj3iYT33KZNqtDozdn5tYyH/bThPebEtgqUn+/w5l6wZIC/8zzvls/127ngHk+jNa0PlNyS2TxhPUK4NaPHIEnnrlp07JEYC4ImcBjaYCWAdcTcUkcJjwZQkN4bGmyO9cjICH98SdLD/HxqzTHeaYDbAX/Hu9HfaBb5dXLWsjw3Xc6hoVnUUZbMQyfgb0KgxDLh92eNGxJkpZiL0VDNOWCxDWsNpzwhLNkLqCvI6lyxiLaUzvJAk6dPaRhExmCbU1lDO2eR0FdSwC1TEhJOT9eDIK1r2hztZKs2oa5FNFfB/IFHVWasVFC9N2h/r/egB5zsRxC9MqBLRBq95NBxaRSFng6ML5WZSw41Qi4C/JWVm89rdj2WqScDHYyAdwyyppWU4T5c9Fmw== example@example.com", "fingerprint": "SHA256:7a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8g9h0i1j2k3l4m5n6o7p8q9r0s1", "created_at": "2024-10-01T12:30:00Z", "user_id": "a47ac10b-58cc-4372-a567-0e02b2c3d479", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/1acbb1a5-e864-4b8e-a3f9-b1ed462afd25"}}}}}, "links": {"self": {"operationId": "findSshKeyBySshKeyId", "parameters": {"sshKeyId": "$request.path.sshKeyId"}}}}, "SSH_Key_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "SSH_Key_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "SSH_Key_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "SSH_Key_Service_API_ValidationError": {"description": "Bad Request - Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required."}}}}}, "SSH_Key_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "SSH_Key_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Failover_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Failover_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Failover_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Failover_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Failover_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Failover_Service_API_FailoverGroupCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Failover_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Failover_Service_API_FilteredCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_FailoverGroup"}, {"$ref": "#/components/schemas/Failover_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"failover_group_collection": {"summary": "Failover group collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/failover-groups?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/failover-groups?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/failover-groups?limit=2&offset=0{&filter}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901", "name": "Primary Failover Group", "status": "normal", "pairs": [{"service_name": "my-application-service", "primary_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "failover_id": "f1e2d3c4-b5a6-7890-fedc-ba9876543210"}], "_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}}]}}}}}}}, "Failover_Service_API_FailoverGroup": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_FailoverGroup"}, {"$ref": "#/components/schemas/Failover_Service_API_HalItem"}]}, "example": {"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901", "name": "Primary Failover Group", "status": "normal", "pairs": [{"service_name": "my-application-service", "primary_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "failover_id": "f1e2d3c4-b5a6-7890-fedc-ba9876543210"}], "_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}}}}, "links": {"self": {"operationId": "findFailoverGroupByFailoverGroupId", "parameters": {"failoverGroupId": "$request.path.failoverGroupId"}}}}, "Failover_Service_API_MultiRegionFailoverStatus": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_MultiRegionFailoverStatus"}, {"$ref": "#/components/schemas/Failover_Service_API_HalItem"}]}, "example": {"is_enabled": true, "failover_group_id": "b2c3d4e5-f6a7-8901-bcde-f12345678901", "is_traffic_failed_over": false, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/a1b2c3d4-e5f6-7890-abcd-ef1234567890/multi-region-failover"}}}}}, "links": {"self": {"operationId": "findMultiRegionFailoverByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Failover_Service_API_CreateFailoverGroupResponse": {"description": "Failover group creation initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group creation has been initiated.", "description": "Confirmation message that the failover group creation has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group creation has been initiated."}}}}, "Failover_Service_API_DeleteFailoverGroupResponse": {"description": "Failover group deletion initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group deletion has been initiated.", "description": "Confirmation message that the failover group deletion has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group deletion has been initiated."}}}}, "Failover_Service_API_FailoverGroupFailoverResponse": {"description": "Failover group failover initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group failover initiated.", "description": "Confirmation message that the failover group failover has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group failover initiated."}}}}, "Failover_Service_API_FailoverGroupRevertFailoverResponse": {"description": "Failover group revert failover initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group revert failover initiated.", "description": "Confirmation message that the failover group revert failover has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group revert failover initiated."}}}}, "Failover_Service_API_FailoverGroupSyncResponse": {"description": "Failover group sync initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group sync initiated.", "description": "Confirmation message that the failover group sync has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group sync initiated."}}}}, "Failover_Service_API_SaveMultiRegionFailoverResponse": {"description": "Multi-region failover enable initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Multi-region failover enable has been initiated.", "description": "Confirmation message that multi-region failover enable has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/a1b2c3d4-e5f6-7890-abcd-ef1234567890/multi-region-failover"}}, "message": "Multi-region failover enable has been initiated."}}}}, "Failover_Service_API_DeleteMultiRegionFailoverResponse": {"description": "Multi-region failover disable initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Multi-region failover disable has been initiated.", "description": "Confirmation message that multi-region failover disable has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/a1b2c3d4-e5f6-7890-abcd-ef1234567890/multi-region-failover"}}, "message": "Multi-region failover disable has been initiated."}}}}, "Failover_Service_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Tag_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Tag_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Tag_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Tag_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Tag_API_TagCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalCollection"}, {"$ref": "#/components/schemas/Tag_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Tag_API_FilteredCollection"}, {"$ref": "#/components/schemas/Tag_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Tag"}, {"$ref": "#/components/schemas/Tag_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"tag_response": {"summary": "Tag collection with pagination", "value": {"_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2&offset=2"}, "limit": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?offset=2{&limit}", "templated": true}, "offset": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2{&offset}", "templated": true}, "filter": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2&offset=2{&filter}", "templated": true}, "sort": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2&offset=2{&sort}", "templated": true}, "prev": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2&offset=0"}, "next": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?offset=4&limit=2"}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"name": "tag-1", "color": "#ffffff", "_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-1"}}}, {"name": "tag-2", "color": "#000000", "_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-2"}}}]}}}}}}}, "Tag_API_Tag": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Tag"}, {"$ref": "#/components/schemas/Tag_API_HalItem"}]}, "example": {"name": "tag-1", "color": "#ffffff", "_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-1"}}}}}, "links": {"self": {"operationId": "findTagByTagName", "parameters": {"tagName": "$request.path.tagName"}}}}, "Tag_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Tag_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Environment_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Environment_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Environment_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Environment_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Environment_Service_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Environment_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Environment_Service_API_DeploymentCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Deployment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"deployment_response": {"summary": "Deployment collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=2"}, "limit": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?offset=2{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=2{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=2{&sort}", "templated": true}, "prev": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=0"}, "next": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=4"}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "status": "done", "code_reference": "tags/v1.0.0", "run_hooks": true, "hooks_argument": null, "sender_id": null, "created_at": "2025-04-01T13:01:06.603Z", "started_at": "2025-04-01T13:01:10.123Z", "completed_at": "2025-04-01T13:05:00.000Z", "_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}, "environment": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}}, {"id": "f1dae0f8-67c7-5d1e-cbe1-1f7604f77de4", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "status": "failed", "code_reference": "tags/v0.9.0", "run_hooks": false, "hooks_argument": null, "sender_id": null, "created_at": "2025-03-28T09:15:00.000Z", "started_at": "2025-03-28T09:15:05.000Z", "completed_at": "2025-03-28T09:18:00.000Z", "_links": {"self": {"href": "https://api.acquia.com/v3/deployments/f1dae0f8-67c7-5d1e-cbe1-1f7604f77de4"}, "environment": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}}]}}}}}}}, "Environment_Service_API_Deployment": {"description": "Deployment details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Deployment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"id": "e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "status": "started", "code_reference": "tags/v1.0.0", "run_hooks": true, "hooks_argument": "--skip-db-update", "created_at": "2025-04-01T13:01:06.603Z", "started_at": "2025-04-01T13:01:10.123Z", "completed_at": null, "sender_id": null, "logs": null, "_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}, "environment": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}}}}, "links": {"self": {"operationId": "findDeploymentByDeploymentId", "parameters": {"deploymentId": "$request.path.deploymentId"}}}}, "Environment_Service_API_CodeDeploy": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_CodeDeploy"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"concurrency": 5, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/code-deploy"}}}}}, "links": {"self": {"operationId": "findCodeDeployByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_Environment": {"description": "Environment details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Environment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"codebase": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_EmbeddedCodebase"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}, "codebase": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "name": "environment_3e8ecbec-ea7c-4260-8414-ef2938c859bc", "label": "Environment_3e8ecbec-ea7c-4260-8414-ef2938c859bc", "description": "Description of 3e8ecbec-ea7c-4260-8414-ef2938c859bc", "status": "normal", "flags": {"production": false, "protection_mode": false}, "properties": {"version": "8.3", "max_execution_time": 10, "memory_limit": 192, "apcu": 32, "client_max_body_size": 192, "max_input_vars": 1000, "max_post_size": 256, "memcached_limit": 128, "upload_max_filesize": 192, "operating_system": "focal"}, "reference": "tag/v3.1", "code_switch_status": "IDLE", "ssh_url": "ssh://site.dev@sitedev.ssh.hosted.acquia-sites.com", "_embedded": {"codebase": {"id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323"}}}}}}}, "links": {"self": {"operationId": "findEnvironmentByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_EnvironmentCollection": {"description": "Environment collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Environment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/sites/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/sites/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2{&offset}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "name": "dev", "label": "Dev", "description": "Development environment", "status": "normal", "reference": "branch/main", "code_switch_status": "IDLE", "ssh_url": "ssh://site.dev@sitedev.ssh.hosted.acquia-sites.com", "flags": {"production": false, "protection_mode": false}, "properties": {"version": "8.3"}, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}}]}}}}}, "Environment_Service_API_FilterableEnvironmentCollection": {"description": "Environment collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_FilteredCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Environment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2&offset=0{&filter}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "name": "dev", "label": "Dev", "description": "Development environment", "status": "normal", "reference": "branch/main", "code_switch_status": "IDLE", "ssh_url": "ssh://site.dev@sitedev.ssh.hosted.acquia-sites.com", "flags": {"production": false, "protection_mode": false}, "properties": {"version": "8.3"}, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}}]}}}}}, "Environment_Service_API_SiteInstance": {"description": "Site Instance details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_SiteInstance"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "site_id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "status": "active", "health_status": {"code": "OK", "summary": "The health status is OK.", "details": "The site instance is active"}, "domains": ["example.com", "example-2.com"], "protection_mode": {"is_enabled": true, "is_inherited": true}}}}, "links": {"self": {"operationId": "findSiteInstanceBySiteIdAndEnvironmentId", "parameters": {"siteId": "$request.path.siteId", "environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_Domain": {"description": "Domain details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Domain"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"name": "example.com", "is_managed": false, "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com"}}}}}, "links": {"self": {"operationId": "findDomainBySiteIdAndEnvironmentIdAndDomainName", "parameters": {"siteId": "$request.path.siteId", "environmentId": "$request.path.environmentId", "domainName": "$request.path.domainName"}}}}, "Environment_Service_API_DomainCollection": {"description": "Domain collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Domain"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?limit=2&offset=0{&sort}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"name": "example.com", "is_managed": false, "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com"}}}]}}}}}, "Environment_Service_API_DomainStatus": {"description": "Domain DNS status details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DomainStatus"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"hostname": "example.com", "site_id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "ip_addresses": ["203.0.113.10"], "cnames": [], "flags": {"default": false, "active": true, "dns_resolves": true, "acquia_hosted": true}, "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com/status"}}}}}}, "Environment_Service_API_Database": {"description": "Database details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Database"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"database_name": "site_dev", "database_role": "site_dev_user", "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database"}}}}}, "links": {"self": {"operationId": "findDatabaseBySiteIdAndEnvironmentId", "parameters": {"siteId": "$request.path.siteId", "environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_DatabaseConnection": {"description": "Database connection credential details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DatabaseConnection"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"db_host": "db.example.com", "name": "site_dev", "password": "s3cr3t", "user_name": "site_dev_user", "ssh_host": "site.dev.ssh.hosted.acquia-sites.com", "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/connection"}}}}}}, "Environment_Service_API_DatabaseBackup": {"description": "Database backup details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DatabaseBackup"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "database_id": "b2c3d4e5-f6a7-8901-bcde-f01234567891", "created_at": "2025-04-01T02:00:00.000Z", "type": "DAILY", "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}, "download": {"href": "https://s3.amazonaws.com/acquia-backups/backup-a1b2c3d4.sql.gz?X-Amz-Expires=3600&X-Amz-Signature=abc123"}}}}}, "links": {"self": {"operationId": "findDatabaseBackupBySiteIdAndEnvironmentIdAndBackupId", "parameters": {"siteId": "$request.path.siteId", "environmentId": "$request.path.environmentId", "backupId": "$request.path.backupId"}}}}, "Environment_Service_API_DatabaseBackupCollection": {"description": "Database backup collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DatabaseBackup"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?limit=2&offset=0{&sort}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "database_id": "b2c3d4e5-f6a7-8901-bcde-f01234567891", "created_at": "2025-04-01T02:00:00.000Z", "type": "DAILY", "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}}}]}}}}}, "Environment_Service_API_EgressIpCollection": {"description": "Egress IP collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_EgressIp"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/eips?limit=25&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/eips?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/eips?limit=25{&offset}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 25, "offset": 0}, "_embedded": {"items": [{"id": "eip-a1b2c3d4-e5f6-7890-abcd-ef1234567890", "status": "active", "ipv4": "203.0.113.10", "ipv6": null, "flags": {"is_primary": true}}]}}}}}, "Environment_Service_API_TrustedProxies": {"description": "Trusted proxy configuration details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_TrustedProxies"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"cidrs_ipv4": ["203.0.113.0/24"], "cidrs_ipv6": [], "associated_cdns": {"cloudflare": {"label": "Cloudflare", "is_enabled": true}}, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/trusted-proxies"}}}}}, "links": {"self": {"operationId": "findTrustedProxiesByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_PrivateNetwork": {"description": "Private network details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_PrivateNetwork"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"id": "pn-a1b2c3d4-e5f6-7890-abcd-ef1234567890", "label": "Production VPC", "_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/private-network"}}}}}, "links": {"self": {"operationId": "findPrivateNetworkByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_DomainPattern": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DomainPattern"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"id": "11111111-1111-1111-1111-111111111111", "pattern": "[site-name].acme.com", "_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}}}}, "links": {"self": {"operationId": "findDomainPatternByEnvironmentIdAndPatternId", "parameters": {"environmentId": "$request.path.environmentId", "patternId": "$request.path.patternId"}}}}, "Environment_Service_API_DomainPatternCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DomainPattern"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"domain_pattern_collection": {"summary": "Domain pattern collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns"}, "limit": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?limit=25{&offset}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?limit=25&offset=0{&sort}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 25, "offset": 0}, "_embedded": {"items": [{"id": "11111111-1111-1111-1111-111111111111", "pattern": "[site-name].acme.com", "_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}}]}}}, "domain_pattern_collection_empty": {"summary": "Empty domain pattern collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns"}, "limit": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?limit=25{&offset}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?limit=25&offset=0{&sort}", "templated": true}}, "count": 0, "total": 0, "pagination": {"total": 0, "limit": 25, "offset": 0}, "_embedded": {"items": []}}}}}}}, "Federated_Authentication_API_IdentityProvider": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_IdentityProvider"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}, "example": {"identity_provider_id": "908914ec-2354-4fb1-9298-637247eccc3a", "label": "Acme Corporation Azure AD", "subscription_id": "sub-123", "idp_entity_id": "https://idp.acme.com/saml", "sp_entity_id": "https://sp.acme.com/saml", "sso_url": "https://acme.com/sso", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----", "created_at": "2026-04-15T11:00:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/908914ec-2354-4fb1-9298-637247eccc3a"}, "sso_policy": {"href": "https://api.acquia.com/v3/identity-providers/908914ec-2354-4fb1-9298-637247eccc3a/policies/sso"}}}}}, "links": {"self": {"operationId": "findIdentityProviderByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}, "update": {"operationId": "updateIdentityProviderByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}, "delete": {"operationId": "deleteIdentityProviderByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}, "enable_sso_policy": {"operationId": "enableIdentityProviderSSOPolicyByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}, "disable_sso_policy": {"operationId": "disableIdentityProviderSSOPolicyByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}}}, "Federated_Authentication_API_IdentityProviderCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_FilteredCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_IdentityProvider"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"identity_provider_response": {"summary": "Identity provider collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2&offset=2"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?offset=2{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2&offset=2{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2&offset=2{&sort}", "templated": true}, "prev": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2&offset=0"}, "next": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?offset=4&limit=2"}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"identity_provider_id": "908914ec-2354-4fb1-9298-637247eccc3a", "label": "Acme Corporation Azure AD", "subscription_id": "sub-123", "idp_entity_id": "https://idp.acme.com/saml", "sp_entity_id": "https://sp.acme.com/saml", "sso_url": "https://acme.com/sso", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----", "created_at": "2026-04-15T11:00:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/908914ec-2354-4fb1-9298-637247eccc3a"}, "sso_policy": {"href": "https://api.acquia.com/v3/identity-providers/908914ec-2354-4fb1-9298-637247eccc3a/policies/sso"}}}, {"identity_provider_id": "123456ec-2354-4fb1-9298-637247eccc3b", "label": "Acme Research Ping Identity", "subscription_id": "sub-123", "idp_entity_id": "https://idp-research.acme.com/saml", "sp_entity_id": "https://sp-research.acme.com/saml", "sso_url": "https://research.acme.com/sso", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----", "created_at": "2026-04-20T14:20:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/123456ec-2354-4fb1-9298-637247eccc3b"}, "sso_policy": {"href": "https://api.acquia.com/v3/identity-providers/123456ec-2354-4fb1-9298-637247eccc3b/policies/sso"}}}]}}}}}}}, "Federated_Authentication_API_SsoDomain": {"description": "OK. The `_links` object always contains `self`. Additional links are state-conditional: `verify` is present when `health.code` is `202` or `404` (POST it to initiate or retry DNS TXT record verification); `identity_providers` is present when the domain is referenced by one or more Identity Provider policies (follows to a filtered list of those IdPs; when present the domain cannot be deleted \u2014 remove it from all policies first).", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_SsoDomain"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}, "examples": {"pending_verification": {"summary": "Domain awaiting DNS verification", "description": "A newly created domain whose DNS TXT record has not yet been confirmed. `health.code` is `202`; the `verify` link is present so the client can trigger or retry the check. `identity_providers` is absent because no policy can reference an unverified domain.", "value": {"domain_id": "dom-789", "domain": "acme.corp", "subscription_id": "sub-123", "health": {"code": "202", "summary": "Verification pending", "details": "Acquia is waiting to confirm the DNS TXT record. Ensure the record has been published and allow time for DNS propagation, then retry verification."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.corp", "value": "xyz789abc123", "health": {"code": "202", "summary": "Check in progress", "details": "The TXT record check has not yet completed."}}, "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-789"}, "verify": {"href": "https://api.acquia.com/v3/sso-domains/dom-789/actions/verify"}}}}, "failed_verification": {"summary": "Domain verification failed \u2014 DNS record not found", "description": "A domain whose TXT record could not be found. `health.code` is `404`; `details` names the exact record to check. The `verify` link is present so the client can retry after fixing the DNS entry.", "value": {"domain_id": "dom-789", "domain": "acme.corp", "subscription_id": "sub-123", "health": {"code": "404", "summary": "Missing DNS record", "details": "Acquia could not verify the presence of the required TXT DNS record at _acquia-challenge.acme.corp. Ensure the record is published with the correct value and retry verification."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.corp", "value": "xyz789abc123", "health": {"code": "404", "summary": "Missing DNS record", "details": "The TXT record at _acquia-challenge.acme.corp was not found or does not match the expected value xyz789abc123."}}, "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-789"}, "verify": {"href": "https://api.acquia.com/v3/sso-domains/dom-789/actions/verify"}}}}, "verified_in_use": {"summary": "Verified domain referenced by an Identity Provider policy", "description": "A verified domain enforced by at least one Identity Provider policy. `health.code` is `200`; `verify` is absent; `identity_providers` is present. A DELETE on this domain will return 409 until the domain is removed from all policies.", "value": {"domain_id": "dom-456", "domain": "acme.com", "subscription_id": "sub-123", "health": {"code": "200", "summary": "Verified", "details": "The DNS TXT record has been confirmed and the domain is verified."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.com", "value": "abc123def456", "health": {"code": "200", "summary": "Verified", "details": "The TXT record at _acquia-challenge.acme.com matches the expected value."}}, "verified_at": "2026-04-15T10:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}, "identity_providers": {"href": "https://api.acquia.com/v3/identity-providers?filter=domain_id%3Ddom-456"}}}}}}}, "links": {"self": {"operationId": "findSsoDomainBySsoDomainId", "parameters": {"domainId": "$response.body#/domain_id"}}, "delete": {"operationId": "deleteSsoDomainBySsoDomainId", "parameters": {"domainId": "$response.body#/domain_id"}}, "verify": {"operationId": "verifySsoDomainBySsoDomainId", "parameters": {"domainId": "$response.body#/domain_id"}}}}, "Federated_Authentication_API_SsoDomainCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_FilteredCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_SsoDomain"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"domain_response": {"summary": "Domain collection with pagination", "description": "Two domains in different states: one verified and in use by a policy (carries `identity_providers` link), one pending verification (carries `verify` link).", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?offset=2&limit=2"}}, "count": 2, "total": 3, "pagination": {"total": 3, "limit": 2, "offset": 0}, "_embedded": {"items": [{"domain_id": "dom-456", "domain": "acme.com", "subscription_id": "sub-123", "health": {"code": "200", "summary": "Verified", "details": "The DNS TXT record has been confirmed and the domain is verified."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.com", "value": "abc123def456", "health": {"code": "200", "summary": "Verified", "details": "The TXT record at _acquia-challenge.acme.com matches the expected value."}}, "verified_at": "2026-04-15T10:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}, "identity_providers": {"href": "https://api.acquia.com/v3/identity-providers?filter=domain_id%3Ddom-456"}}}, {"domain_id": "dom-789", "domain": "acme.corp", "subscription_id": "sub-123", "health": {"code": "202", "summary": "Verification pending", "details": "Acquia is waiting to confirm the DNS TXT record. Ensure the record has been published and allow time for DNS propagation, then retry verification."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.corp", "value": "xyz789abc123", "health": {"code": "202", "summary": "Check in progress", "details": "The TXT record check has not yet completed."}}, "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-789"}, "verify": {"href": "https://api.acquia.com/v3/sso-domains/dom-789/actions/verify"}}}]}}}}}}}, "Federated_Authentication_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Federated_Authentication_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Federated_Authentication_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Federated_Authentication_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Federated_Authentication_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Federated_Authentication_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}}, "requestBodies": {"Codebase_Service_API_CreateCodebaseRequest": {"description": "Codebase creation request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"codebase_id": {"type": "string", "format": "uuid", "description": "Client-supplied UUID for the new codebase"}, "label": {"type": "string", "description": "Human-readable label for the codebase"}, "region": {"type": "string", "description": "AWS region where the codebase will be created"}}, "required": ["codebase_id", "label", "region"], "additionalProperties": false}, "examples": {"create": {"summary": "Create a codebase", "description": "Creates a new codebase for a subscription", "value": {"codebase_id": "a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4", "label": "my-codebase", "region": "us-east-1"}}}}}}, "Codebase_Service_API_CreateDomainPatternRequest": {"description": "Create domain pattern request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])(?=.*\\[environment-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The domain pattern to apply to all associated sites in this codebase, optionally followed by a single path segment. Both [site-name] and [environment-name] tokens are mandatory. Domain \u2264 200 chars excluding token placeholders; optional path max 255 chars matching ^/[A-Za-z0-9._-]+$. Additional semantic rules (no IPs, no forbidden suffixes, no wildcards, one pattern per codebase) are enforced at the service layer.\n"}}, "required": ["pattern"], "additionalProperties": false}, "examples": {"create_domain_pattern": {"summary": "Create a domain pattern", "value": {"pattern": "[site-name].[environment-name].acme.com"}}}}}}, "Codebase_Service_API_UpdateCodebaseRequest": {"description": "Codebase update request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"label": {"type": "string", "description": "Human-readable label for the codebase"}, "description": {"type": "string", "description": "Description of the codebase"}}, "minProperties": 1, "additionalProperties": false}, "examples": {"update": {"summary": "Update a codebase", "description": "Updates an existing codebase's label and description", "value": {"label": "updated-codebase-label", "description": "Updated codebase description"}}}}}}, "Codebase_Service_API_UpdateDomainPatternRequest": {"description": "Update domain pattern request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])(?=.*\\[environment-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The updated domain pattern to apply to all associated sites in this codebase, optionally followed by a single path segment. Both [site-name] and [environment-name] tokens are mandatory. Domain \u2264 200 chars excluding token placeholders; optional path max 255 chars matching ^/[A-Za-z0-9._-]+$. Additional semantic rules (no IPs, no forbidden suffixes, no wildcards, one pattern per codebase) are enforced at the service layer.\n"}}, "required": ["pattern"], "additionalProperties": false, "minProperties": 1}, "examples": {"update_domain_pattern": {"summary": "Update a domain pattern", "value": {"pattern": "[site-name].[environment-name].acme.com"}}}}}}, "Site_Service_API_DuplicateSiteRequest": {"description": "Site duplication request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"environment_mapping": {"type": "array", "items": {"type": "string", "pattern": "^[a-zA-Z0-9-]+:[a-zA-Z0-9-]+$", "description": "Environment mapping in the format 'sourceEnvId:targetEnvId'"}, "description": "Array of environment mappings. You must provide exactly one environment mapping. Each entry maps a source environment ID to a target environment ID, separated by a colon.\n", "minItems": 1, "maxItems": 1, "example": ["0ebce493-9d09-479d-a9a8-138a206fa687:a1b2c3d4-e5f6-7890-abcd-ef1234567890"]}, "site_name": {"type": "string", "description": "Machine name for the duplicated site. Must start with a lowercase letter and contain only lowercase letters and numbers. Maximum 14 characters.\n", "minLength": 1, "maxLength": 14, "pattern": "^[a-z][a-z0-9]*$", "example": "dupsite"}, "site_label": {"type": "string", "description": "Human-readable label for the duplicated site. Must only contain letters, numbers, and spaces. Maximum 50 characters.\n", "minLength": 1, "maxLength": 50, "example": "Duplicated Site"}, "site_id": {"type": "string", "format": "uuid", "description": "An optional explicit UUID for the new duplicated site. A UUID is generated automatically if omitted.", "example": "f1a2b3c4-d5e6-7890-abcd-ef1234567890"}, "hook_argument": {"type": "string", "description": "Optional hook argument to pass to the duplication process.", "example": "--verbose"}}, "required": ["environment_mapping", "site_name", "site_label"], "additionalProperties": false}, "examples": {"duplicate_basic": {"summary": "Duplicate a site with required fields", "description": "Duplicates a site with a single environment mapping", "value": {"environment_mapping": ["0ebce493-9d09-479d-a9a8-138a206fa687:a1b2c3d4-e5f6-7890-abcd-ef1234567890"], "site_name": "dupsite", "site_label": "Duplicated Site"}}, "duplicate_with_options": {"summary": "Duplicate a site with all options", "description": "Duplicates a site specifying a custom site ID and hook argument", "value": {"environment_mapping": ["0ebce493-9d09-479d-a9a8-138a206fa687:a1b2c3d4-e5f6-7890-abcd-ef1234567890"], "site_name": "duphook", "site_label": "Dup With Hook", "site_id": "f1a2b3c4-d5e6-7890-abcd-ef1234567890", "hook_argument": "my-hook-arg"}}}}}}, "Site_Service_API_CreateSiteRequest": {"description": "Site creation request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The machine name of the site. Must start with a lowercase letter and contain only lowercase letters and numbers.", "minLength": 1, "maxLength": 14, "pattern": "^[a-z][a-z0-9]*$", "example": "mysite"}, "label": {"type": "string", "description": "The human-readable label for the site.", "minLength": 1, "maxLength": 50, "example": "My Site"}, "codebase_id": {"type": "string", "description": "The unique identifier of the codebase to associate with this site.", "pattern": "^[a-zA-Z0-9-]+$", "example": "a9b8c7d6-e5f4-3210-abcd-ef9876543210"}, "site_id": {"type": "string", "format": "uuid", "description": "An optional explicit UUID for the new site. A UUID is generated automatically if omitted.", "example": "0ebce493-9d09-479d-a9a8-138a206fa687"}, "description": {"type": "string", "description": "An optional description for the site.", "maxLength": 512, "example": "A production site for the marketing team."}}, "required": ["name", "label", "codebase_id"], "additionalProperties": false}, "examples": {"create_site_full": {"summary": "Create a new site with all fields", "value": {"name": "mysite", "label": "My Site", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210", "site_id": "0ebce493-9d09-479d-a9a8-138a206fa687", "description": "This is a description of my site."}}, "create_site_minimal": {"summary": "Create a new site with required fields only", "value": {"name": "newsitename", "label": "New Site Label", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210"}}}}}}, "Site_Service_API_UpdateSiteRequest": {"description": "Site update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"label": {"type": "string", "description": "The new human-readable label for the site.", "minLength": 1, "maxLength": 50, "example": "My Updated Site"}, "description": {"type": "string", "description": "The new description for the site.", "maxLength": 512, "example": "Updated description for this site."}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update_label": {"summary": "Update site label", "value": {"label": "My Updated Site"}}, "update_description": {"summary": "Update site description", "value": {"description": "Updated description for this site."}}, "update_both": {"summary": "Update label and description", "value": {"label": "My Updated Site", "description": "Updated description for this site."}}}}}}, "CDN_API_ProvisionCdnForDomainRequest": {"description": "Domain CDN provisioning request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"environment_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "The environment identifier that the domain will be associated with for purging purposes."}}, "additionalProperties": false, "required": ["environment_id"], "minProperties": 1}, "example": {"environment_id": "0c3f0f5f-5727-4838-9459-2d90ee1cf7c1"}}}}, "CDN_API_CreatePurgeRequest": {"description": "Purge request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"resource_type": {"type": "string", "description": "The type of resource to purge.", "enum": ["tags", "urls", "domains", "everything"]}, "values": {"type": "array", "description": "List of values to purge based on the resource type.\nRequired when `resource_type` is not `everything`.\n", "items": {"type": "string"}, "minItems": 1}}, "additionalProperties": false, "required": ["resource_type"], "minProperties": 1}, "examples": {"purge_urls": {"summary": "Purge specific URLs", "value": {"resource_type": "urls", "values": ["https://example.com/page1", "https://example.com/page2"]}}, "purge_tags": {"summary": "Purge by cache tags", "value": {"resource_type": "tags", "values": ["product-123", "category-456"]}}, "purge_domains": {"summary": "Purge entire domains", "value": {"resource_type": "domains", "values": ["example.com", "test.example.org"]}}, "purge_everything": {"summary": "Purge everything", "value": {"resource_type": "everything"}}}}}}, "CDN_API_UpdateSecurityRuleSetRequest": {"description": "Security ruleset update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"is_enabled": {"type": "boolean", "description": "Indicates whether the security ruleset should be enabled."}}, "additionalProperties": false, "required": ["is_enabled"], "minProperties": 1}, "examples": {"enable": {"summary": "Enables a security ruleset", "value": {"is_enabled": true}}}}}}, "CDN_API_CreateIpRuleRequest": {"description": "IP rule create request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"ips": {"type": "array", "description": "The IPs or CIDR blocks to include in the rule.", "items": {"type": "string", "description": "An IP address or CIDR block."}}, "action": {"type": "string", "enum": ["block", "allow"], "description": "The action applied when the rule matches."}, "display_name": {"type": "string", "description": "The display name of the IP rule."}, "description": {"type": "string", "description": "The description of the IP rule."}}, "additionalProperties": false, "required": ["ips", "action", "display_name"]}, "examples": {"create": {"summary": "Creates an IP rule", "value": {"ips": ["192.0.2.10", "198.51.100.0/24"], "action": "block", "display_name": "Block office IPs", "description": "Blocks office IP ranges."}}}}}}, "CDN_API_UpdateIpRuleRequest": {"description": "IP rule update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the IP rule."}, "action": {"type": "string", "enum": ["block", "allow"], "description": "The action applied when the rule matches."}, "description": {"type": "string", "description": "The description of the IP rule."}, "ips": {"type": "array", "description": "The IPs or CIDR blocks associated with the rule.", "items": {"type": "string", "description": "An IP address or CIDR block."}}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update": {"summary": "Updates an IP rule", "value": {"display_name": "Allow support", "action": "allow", "ips": ["203.0.113.5"]}}}}}}, "CDN_API_CreateCustomRuleRequest": {"description": "Custom security rule create request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the custom security rule."}, "action": {"type": "string", "enum": ["block", "allow", "alert"], "description": "The action applied when the rule matches."}, "priority": {"type": "integer", "minimum": 1, "description": "The priority order for the rule."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "paths": {"type": "array", "description": "The paths the rule applies to.", "items": {"type": "string", "description": "A path pattern."}}}, "additionalProperties": false, "required": ["display_name", "action", "domains", "paths"], "minProperties": 1}, "examples": {"create": {"summary": "Creates a custom security rule", "value": {"display_name": "Block bad bots", "action": "block", "priority": 1, "domains": ["example.com"], "paths": ["/api/*"]}}}}}}, "CDN_API_CreateRateLimitingRuleRequest": {"description": "Rate limiting rule create request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the rate limiting rule."}, "action": {"type": "string", "enum": ["block", "alert"], "description": "The action applied when the rule matches."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "rate_limit_per_minute": {"type": "string", "enum": ["lenient", "moderate", "strict"], "description": "The rate limit category applied to the rule."}}, "additionalProperties": false, "required": ["display_name", "action", "rate_limit_per_minute"], "minProperties": 1}, "examples": {"create": {"summary": "Creates a rate limiting rule", "value": {"display_name": "Rate Rule 1", "action": "alert", "rate_limit_per_minute": "lenient", "domains": ["example.com"]}}}}}}, "CDN_API_UpdateRateLimitingRuleRequest": {"description": "Rate limiting rule update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the rate limiting rule."}, "action": {"type": "string", "enum": ["block", "alert"], "description": "The action applied when the rule matches."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "rate_limit_per_minute": {"type": "string", "enum": ["lenient", "moderate", "strict"], "description": "The rate limit category applied to the rule."}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update": {"summary": "Updates a rate limiting rule", "value": {"display_name": "Rate Rule 2", "action": "block", "rate_limit_per_minute": "strict", "domains": ["shop.example.com"]}}}}}}, "CDN_API_UpdateCustomRuleRequest": {"description": "Custom security rule update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the custom security rule."}, "action": {"type": "string", "enum": ["block", "allow", "alert"], "description": "The action applied when the rule matches."}, "priority": {"type": "integer", "minimum": 1, "description": "The priority order for the rule."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "paths": {"type": "array", "description": "The paths the rule applies to.", "items": {"type": "string", "description": "A path pattern."}}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update": {"summary": "Updates a custom security rule", "value": {"display_name": "Alert login scans", "action": "alert", "priority": 2, "domains": ["shop.example.com"], "paths": ["/login"]}}}}}}, "SSH_Key_Service_API_SshKeyRequestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "required": ["label", "public_key"], "description": "Describes the request body for an SSH key.", "properties": {"label": {"type": "string", "description": "The SSH key label."}, "public_key": {"type": "string", "description": "The public key."}}, "additionalProperties": false, "minProperties": 1}, "example": {"label": "mykey", "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQChwPHzTTDKDpSbpa2+d22LcbQmsw92eLsUK3Fmei1fiGDkd34NsYCN8m7lsi3NbvdMS83CtPQPWiCveYPzFs1/hHc4PYj8opD2CNnr5iWVVbyaulCYHCgVv4aB/ojcexg8q483A4xJeF15TiCr/gu34rK6ucTvC/tn/rCwJBudczvEwt0klqYwv8Cl/ytaQboSuem5KgSjO3lMrb6CWtfSNhE43ZOw+UBFBqxIninN868vGMkIv9VY34Pwj54rPn/ItQd6Ef4B0KHHaGmzK0vfP+AK7FxNMoHnj3iYT33KZNqtDozdn5tYyH/bThPebEtgqUn+/w5l6wZIC/8zzvls/127ngHk+jNa0PlNyS2TxhPUK4NaPHIEnnrlp07JEYC4ImcBjaYCWAdcTcUkcJjwZQkN4bGmyO9cjICH98SdLD/HxqzTHeaYDbAX/Hu9HfaBb5dXLWsjw3Xc6hoVnUUZbMQyfgb0KgxDLh92eNGxJkpZiL0VDNOWCxDWsNpzwhLNkLqCvI6lyxiLaUzvJAk6dPaRhExmCbU1lDO2eR0FdSwC1TEhJOT9eDIK1r2hztZKs2oa5FNFfB/IFHVWasVFC9N2h/r/egB5zsRxC9MqBLRBq95NBxaRSFng6ML5WZSw41Qi4C/JWVm89rdj2WqScDHYyAdwyyppWU4T5c9Fmw== example@example.com"}}}}, "Failover_Service_API_CreateFailoverGroupRequest": {"description": "Create failover group request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the failover group.", "example": "Primary Failover Group"}}, "required": ["name"], "additionalProperties": false}, "examples": {"create": {"summary": "Creates a new failover group", "description": "Creates a new failover group with the specified name", "value": {"name": "Primary Failover Group"}}}}}}, "Failover_Service_API_SaveMultiRegionFailoverRequest": {"description": "Multi-region failover enable request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"region": {"type": "string", "description": "The region to enable multi-region failover for.", "example": "us-east-1"}}, "required": ["region"], "additionalProperties": false, "minProperties": 1}, "examples": {"enable": {"summary": "Enables multi-region failover for a region", "description": "Enables multi-region failover for the specified region", "value": {"region": "us-east-1"}}}}}}, "Tag_API_SaveTagRequest": {"description": "Tag create/update request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"color": {"type": "string", "pattern": "^#((?:[a-f0-9]{3}){1,2})$", "description": "A color for the specified tag"}}, "additionalProperties": false, "minProperties": 1}, "examples": {"save": {"summary": "Saves a tag", "description": "Saves a tag with specified color", "value": {"color": "#000000"}}}}}}, "Environment_Service_API_StartDeploymentRequest": {"description": "Deployment start request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"run_hooks": {"type": "boolean", "description": "Whether to run deployment hooks."}, "code_reference": {"type": "string", "description": "The code reference (branch or tag) to deploy."}, "hooks_argument": {"type": "string", "description": "Additional arguments passed to deployment hooks."}}, "required": ["run_hooks", "code_reference"], "additionalProperties": false, "minProperties": 1}, "examples": {"start_deployment": {"summary": "Start a deployment", "description": "Starts a deployment for the specified environment.", "value": {"run_hooks": true, "code_reference": "release-2025-01-15", "hooks_argument": "--migrate --clear-cache"}}}}}}, "Environment_Service_API_UpdateCodeDeployRequest": {"description": "Code deploy concurrency update request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"concurrency": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Maximum number of concurrent code deploys allowed for the environment."}}, "required": ["concurrency"], "additionalProperties": false, "minProperties": 1}, "examples": {"update_concurrency": {"summary": "Update code deploy concurrency", "description": "Sets the maximum concurrent code deploys for the environment.", "value": {"concurrency": 10}}}}}}, "Environment_Service_API_ReorderSiteInstancesRequest": {"description": "Site instances reorder request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"site_instance_ids": {"type": "array", "description": "List of site instance IDs in the desired priority order.", "items": {"type": "string", "description": "Site instance identifier in the format {siteId}.{environmentId} (dot-separated site and environment UUIDs)."}}}, "required": ["site_instance_ids"], "additionalProperties": false, "minProperties": 1}, "examples": {"reorder": {"summary": "Reorder site instances", "description": "Provides the desired order of site instance IDs for the environment.", "value": {"site_instance_ids": ["3e8ecbec-ea7c-4260-8414-ef2938c859bc.a0c9dff7-56b6-4c0d-bad0-0e6593f66cd3", "b1d8e2f8-67c7-5d1e-cbe1-1f7604f77de4.c2e9f3a9-78d8-6e2f-dcf2-2a8715a88ef5", "d3fa04ba-89e9-4f3a-edf3-3b9826b99fa6.e4ab15cb-90fa-4a4b-fea4-4c0937c00ab7"]}}}}}}, "Environment_Service_API_UpdateEnvironmentRequest": {"description": "Update environment request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"label": {"type": "string", "minLength": 1, "maxLength": 128, "description": "Human-readable label for the environment."}, "description": {"type": "string", "minLength": 1, "maxLength": 512, "description": "Description for the environment."}, "properties": {"type": "object", "description": "PHP and server configuration properties for the environment.", "properties": {"version": {"type": "string", "description": "PHP version (e.g. \"8.3\")."}, "apcu": {"type": "integer", "description": "APCu memory limit in MB."}, "max_execution_time": {"type": "integer", "description": "PHP max execution time in seconds."}, "memory_limit": {"type": "integer", "description": "PHP memory limit in MB."}, "opcache": {"type": "integer", "description": "OPcache memory limit in MB."}, "interned_strings_buffer": {"type": "integer", "description": "OPcache interned strings buffer in MB."}, "client_max_body_size": {"type": "integer", "description": "Nginx client_max_body_size in MB."}, "upload_max_filesize": {"type": "integer", "description": "PHP upload_max_filesize in MB."}, "max_post_size": {"type": "integer", "description": "PHP post_max_size in MB."}, "max_input_vars": {"type": "integer", "description": "PHP max_input_vars."}, "memcached_limit": {"type": "integer", "description": "Memcached memory limit in MB."}, "operating_system": {"type": "string", "description": "Operating system (e.g. \"focal\")."}, "sendmail_path": {"type": "string", "description": "Sendmail path configuration."}}}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update_label": {"summary": "Update environment label", "value": {"label": "Staging", "description": "Staging environment"}}, "update_properties": {"summary": "Update PHP properties", "value": {"properties": {"version": "8.3", "memory_limit": 256}}}}}}}, "Environment_Service_API_ClearCachesRequest": {"description": "Clear caches request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"domains": {"type": "array", "description": "List of domain names to clear caches for.", "minItems": 1, "items": {"type": "string", "description": "A domain name."}}}, "required": ["domains"], "additionalProperties": false}, "examples": {"clear_caches": {"summary": "Clear caches for specific domains", "value": {"domains": ["example.com", "www.example.com"]}}}}}}, "Environment_Service_API_CreateSiteInstanceRequest": {"description": "Create site instance request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"site_id": {"type": "string", "description": "The UUID of the site to associate with this environment."}, "source_environment_id": {"type": "string", "description": "The UUID of the environment to copy files and database from during creation."}, "source_site_id": {"type": "string", "description": "The UUID of the source site to copy files from during creation."}, "hook_arguments": {"type": "string", "description": "Additional arguments to pass to deployment hooks during creation."}}, "required": ["site_id"], "additionalProperties": false}, "examples": {"create": {"summary": "Associate a site with an environment", "value": {"site_id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}}}}}, "Environment_Service_API_CopySiteInstanceFilesRequest": {"description": "Copy site instance files request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"source_environment_id": {"type": "string", "description": "The UUID of the environment to copy files from."}}, "required": ["source_environment_id"], "additionalProperties": false}, "examples": {"copy_files": {"summary": "Copy files from another environment", "value": {"source_environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323"}}}}}}, "Environment_Service_API_CopySiteInstanceDatabaseRequest": {"description": "Copy site instance database request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"source_environment_id": {"type": "string", "description": "The UUID of the environment to copy the database from."}}, "required": ["source_environment_id"], "additionalProperties": false}, "examples": {"copy_database": {"summary": "Copy database from another environment", "value": {"source_environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323"}}}}}}, "Environment_Service_API_AssociatePrivateNetworkRequest": {"description": "Associate private network request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"private_network_id": {"type": "string", "description": "The identifier of the private network to associate with this environment."}}, "required": ["private_network_id"], "additionalProperties": false, "minProperties": 1}, "examples": {"associate": {"summary": "Associate a private network", "value": {"private_network_id": "pn-a1b2c3d4-e5f6-7890-abcd-ef1234567890"}}}}}}, "Environment_Service_API_UpdateTrustedProxiesRequest": {"description": "Update trusted proxies request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"cidrs_ipv4": {"type": "array", "description": "List of trusted IPv4 CIDR blocks.", "items": {"type": "string", "description": "An IPv4 CIDR block (e.g. \"203.0.113.0/24\")."}}, "cidrs_ipv6": {"type": "array", "description": "List of trusted IPv6 CIDR blocks.", "items": {"type": "string", "description": "An IPv6 CIDR block (e.g. \"2001:db8::/32\")."}}, "associated_cdns": {"type": "array", "description": "List of CDN names to associate with this environment.", "items": {"type": "string", "enum": ["akamai", "cloudflare", "fastly"]}}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update": {"summary": "Update trusted proxy configuration", "value": {"cidrs_ipv4": ["203.0.113.0/24"], "cidrs_ipv6": [], "associated_cdns": ["cloudflare"]}}}}}}, "Environment_Service_API_CreateDomainPatternRequest": {"description": "Create domain pattern request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The domain pattern to apply to all associated sites in this environment, optionally followed by a single path segment. The [site-name] token is mandatory; [environment-name] is optional. Domain \u2264 200 chars excluding token placeholders; optional path max 255 chars matching ^/[A-Za-z0-9._-]+$. Additional semantic rules (no IPs, no forbidden suffixes, no wildcards, one pattern per environment) are enforced at the service layer.\n", "example": "[site-name].acme.com"}}, "required": ["pattern"], "additionalProperties": false}, "examples": {"create_domain_pattern": {"summary": "Create a domain pattern", "value": {"pattern": "[site-name].acme.com"}}}}}}, "Environment_Service_API_UpdateDomainPatternRequest": {"description": "Update domain pattern request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The updated domain pattern to apply to all associated sites in this environment, optionally followed by a single path segment. The [site-name] token is mandatory. Domain \u2264 200 chars excluding token placeholders; optional path max 255 chars matching ^/[A-Za-z0-9._-]+$. Additional semantic rules (no IPs, no forbidden suffixes, no wildcards, one pattern per environment) are enforced at the service layer.\n"}}, "required": ["pattern"], "additionalProperties": false, "minProperties": 1}, "examples": {"update_domain_pattern": {"summary": "Update a domain pattern", "value": {"pattern": "[site-name].staging.acme.com"}}}}}}, "Federated_Authentication_API_CreateSsoDomain": {"description": "Request body for creating a new domain.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"domain": {"type": "string", "pattern": "^[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?(\\.[a-zA-Z]{2,})+$", "description": "The domain name to create (e.g., \"acme.com\")."}}, "required": ["domain"], "additionalProperties": false}, "example": {"domain": "acme.com"}}}}, "Federated_Authentication_API_CreateIdentityProvider": {"description": "Request body for creating a new Identity Provider.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"idp_entity_id": {"type": "string", "format": "uri", "description": "The Identity Provider Entity ID."}, "label": {"type": "string", "description": "The name of the Identity Provider."}, "sso_url": {"type": "string", "format": "uri", "description": "The SSO URL for this IdP."}, "certificate": {"type": "string", "description": "The certificate for this IdP."}}, "required": ["label", "idp_entity_id", "sso_url", "certificate"], "additionalProperties": false}, "example": {"label": "Acme Corporation Azure AD", "idp_entity_id": "https://idp.acme.com/saml", "sso_url": "https://acme.com/sso", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----"}}}}, "Federated_Authentication_API_UpdateIdentityProvider": {"description": "Request body for updating an existing Identity Provider.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"label": {"type": "string", "description": "The name of the Identity Provider."}, "certificate": {"type": "string", "description": "The X.509 certificate used for SAML authentication."}, "sso_url": {"type": "string", "format": "uri", "description": "The Single Sign-On URL for the Identity Provider."}, "idp_entity_id": {"type": "string", "format": "uri", "description": "The Identity Provider Entity ID."}}, "additionalProperties": false, "minProperties": 1}, "example": {"label": "Updated Acme Corporation Azure AD", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----", "sso_url": "https://updatedacme.com/sso", "idp_entity_id": "https://idp2.acme.com/saml"}}}}, "Federated_Authentication_API_CreateSsoPolicy": {"$ref": "#/components/requestBodies/Federated_Authentication_API_CreateSsoPolicyRequest"}, "Federated_Authentication_API_UpdateSsoPolicy": {"$ref": "#/components/requestBodies/Federated_Authentication_API_UpdateSsoPolicyRequest"}, "Federated_Authentication_API_UpdateSsoPolicyRequest": {"description": "Request body for updating an SSO policy for an Identity Provider.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"domain_ids": {"type": "array", "description": "List of verified domain IDs to enforce this Identity Provider for.", "items": {"type": "string", "description": "Reference to a verified SSO domain."}}}, "required": ["domain_ids"], "additionalProperties": false, "minProperties": 1}, "example": {"domain_ids": ["dom-456"]}}}}, "Federated_Authentication_API_CreateSsoPolicyRequest": {"description": "Request body for creating an SSO policy for an Identity Provider.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"domain_ids": {"type": "array", "description": "List of verified domain IDs to enforce this Identity Provider for.", "items": {"type": "string", "description": "Reference to a verified SSO domain."}}}, "required": ["domain_ids"], "additionalProperties": false}, "example": {"domain_ids": ["dom-456", "dom-789"]}}}}}, "securitySchemes": {"Codebase_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Site_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "CDN_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "SSH_Key_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Failover_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Tag_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Environment_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Federated_Authentication_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}}}} \ No newline at end of file From 70a8f7023beb24902033b76bc9bdc3255344a725 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 13 Jul 2026 13:57:36 +0000 Subject: [PATCH 3/3] chore: update Acquia v3 OpenAPI spec --- assets/acquia-v3-spec.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/assets/acquia-v3-spec.json b/assets/acquia-v3-spec.json index 7df143af0..fbe884d21 100644 --- a/assets/acquia-v3-spec.json +++ b/assets/acquia-v3-spec.json @@ -1 +1 @@ -{"openapi": "3.1.1", "info": {"title": "Acquia Cloud Platform API", "version": "3.0.0", "description": "The Cloud Platform API includes over 200 endpoints to enhance developer workflow, website management, and provisioning capabilities.", "license": {"name": "Acquia Terms of Service", "url": "https://www.acquia.com/acquia/agreement"}, "contact": {"name": "Acquia", "url": "https://www.acquia.com/contact"}, "x-test-drift": "force-drift-for-automerge-test"}, "tags": [{"name": "Codebases", "description": "Codebase management", "x-displayName": "Codebases"}, {"name": "Codebase References", "description": "Codebase branch and tag references", "x-displayName": "Codebase References"}, {"name": "Domain Patterns", "description": "Automated domain pattern management", "x-displayName": "Domain Patterns"}, {"name": "Sites", "description": "Site management", "x-displayName": "Sites"}, {"name": "CDNs", "description": "CDN domain management and cache purge operations", "x-displayName": "CDNs"}, {"name": "SSH Keys", "description": "SSH key management for user accounts", "x-displayName": "SSH Keys"}, {"name": "Failover Groups", "description": "Failover group management", "x-displayName": "Failover Groups"}, {"name": "Environments", "description": "Environment configuration and lifecycle", "x-displayName": "Environments"}, {"name": "Tags", "description": "Tag management", "x-displayName": "Tags"}, {"name": "Site Instances", "description": "Site instance management", "x-displayName": "Site Instances"}, {"name": "Deployments", "description": "Deployment management", "x-displayName": "Deployments"}, {"name": "Code Deploys", "description": "Code deploy operations", "x-displayName": "Code Deploys"}, {"name": "Domains", "description": "Domain management", "x-displayName": "Domains"}, {"name": "Site Instance Databases", "description": "Site instance database, connection, and backup management", "x-displayName": "Site Instance Databases"}, {"name": "Identity Providers", "description": "Federated SSO identity provider management", "x-displayName": "Identity Providers"}], "paths": {"/codebases": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of codebases accessible by the user.", "description": "Retrieves a paginated collection of codebases. Use the `filter` parameter to scope results by association.\n\nFilter syntax:\n- By application: `filter=application_id%3D` (e.g. `filter=application_id%3Dabc-123`)\n", "operationId": "getCodebases", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_Offset"}, {"$ref": "#/components/parameters/Codebase_Service_API_Limit"}, {"$ref": "#/components/parameters/Codebase_Service_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_CodebaseCollection"}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a codebase by its ID.", "operationId": "findCodebaseByCodebaseId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:find"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_Codebase"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates a codebase by its ID.", "operationId": "updateCodebaseByCodebaseId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:update"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}], "requestBody": {"$ref": "#/components/requestBodies/Codebase_Service_API_UpdateCodebaseRequest"}, "responses": {"200": {"description": "Codebase updated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Codebase updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}, "message": "Codebase updated."}}}}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a codebase by its ID.", "operationId": "deleteCodebaseByCodebaseId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:delete"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}], "responses": {"200": {"description": "Codebase deleted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Codebase deleted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}, "message": "Codebase deleted."}}}}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/references": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of git references for a codebase.", "operationId": "getReferencesByCodebaseId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list-references"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebase References"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_Offset"}, {"$ref": "#/components/parameters/Codebase_Service_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_CodebaseReferenceCollection"}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/references/{referenceName}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a single git reference for a codebase.", "operationId": "findReferenceByCodebaseIdAndReferenceName", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:find-reference"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebase References"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_ReferenceName"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_CodebaseReference"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/domain-patterns": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of domain patterns for the specified codebase.", "operationId": "getDomainPatternsByCodebaseId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list-domain-patterns"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_Offset"}, {"$ref": "#/components/parameters/Codebase_Service_API_Limit"}, {"$ref": "#/components/parameters/Codebase_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_DomainPatternCollection"}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a domain pattern for the specified codebase.", "operationId": "createDomainPatternByCodebaseId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:create-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}], "requestBody": {"$ref": "#/components/requestBodies/Codebase_Service_API_CreateDomainPatternRequest"}, "responses": {"202": {"description": "Domain pattern creation initiated.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern is being applied to all associated sites in this codebase.", "description": "Confirmation message that the domain pattern is being applied."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}, "message": "The domain pattern is being applied to all associated sites in this codebase."}}}}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/domain-patterns/{patternId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a domain pattern by codebase ID and pattern ID.", "operationId": "findDomainPatternByCodebaseIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:find-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_PatternId"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_DomainPattern"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates a domain pattern for the specified codebase.", "operationId": "updateDomainPatternByCodebaseIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:update-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_PatternId"}], "requestBody": {"$ref": "#/components/requestBodies/Codebase_Service_API_UpdateDomainPatternRequest"}, "responses": {"202": {"description": "Domain pattern update initiated.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern update is being applied to all associated sites in this codebase.", "description": "Confirmation message that the domain pattern update is being applied."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}, "message": "The domain pattern update is being applied to all associated sites in this codebase."}}}}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a domain pattern for the specified codebase. Engineering role only.", "operationId": "deleteDomainPatternByCodebaseIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:delete-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_PatternId"}], "responses": {"202": {"description": "Domain pattern deletion initiated. The 202 covers two async operations: (1) removal of the pattern record and (2) a bulk cleanup that disassociates any URLs already generated from this pattern on all associated site instances in the codebase. Both operations complete before the final settled state is observable.\n", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern is being removed from all associated sites in this codebase.", "description": "Confirmation message that the domain pattern is being removed."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}, "message": "The domain pattern is being removed from all associated sites in this codebase."}}}}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionId}/codebases": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of codebases for a subscription.", "operationId": "getCodebasesBySubscriptionId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-codebases"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_SubscriptionId"}, {"$ref": "#/components/parameters/Codebase_Service_API_Offset"}, {"$ref": "#/components/parameters/Codebase_Service_API_Limit"}, {"$ref": "#/components/parameters/Codebase_Service_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_SubscriptionCodebaseCollection"}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a new codebase for a subscription.", "operationId": "createCodebase", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-codebase"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_SubscriptionId"}], "requestBody": {"$ref": "#/components/requestBodies/Codebase_Service_API_CreateCodebaseRequest"}, "responses": {"200": {"description": "Codebase created", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Codebase created.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}, "message": "Codebase created."}}}}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/sites": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of sites accessible by the user.", "operationId": "getSites", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:list"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_Offset"}, {"$ref": "#/components/parameters/Site_Service_API_Limit"}, {"$ref": "#/components/parameters/Site_Service_API_Filter"}, {"$ref": "#/components/parameters/Site_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_SiteCollection"}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a site for a codebase.", "operationId": "createSite", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:create"}}}, "tags": ["Sites"], "requestBody": {"$ref": "#/components/requestBodies/Site_Service_API_CreateSiteRequest"}, "responses": {"200": {"description": "Site created", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site creation started.", "description": "Confirmation message indicating site creation has been initiated"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/f1a2b3c4-d5e6-7890-abcd-ef1234567890"}, "parent": {"href": "https://api.acquia.com/v3/sites"}}, "message": "Site creation started."}}}}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/sites/{siteId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a site by its ID.", "operationId": "findSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:find"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_Site"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates a site by its ID.", "operationId": "updateSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:update"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "requestBody": {"$ref": "#/components/requestBodies/Site_Service_API_UpdateSiteRequest"}, "responses": {"200": {"description": "Site update accepted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site update started.", "description": "Confirmation message indicating site update has been initiated"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/12345678-1234-1234-1234-123456789012"}}, "message": "Site update started."}}}}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a site by its ID.", "operationId": "deleteSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:delete"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "responses": {"202": {"description": "Site deletion accepted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site deleted.", "description": "Confirmation message indicating the site has been deleted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/550e8400-e29b-41d4-a716-446655440002"}}, "message": "Site deleted."}}}}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/sites/{siteId}/actions/duplicate": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Duplicates a site from another given site.", "operationId": "duplicateSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:duplicate"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "requestBody": {"$ref": "#/components/requestBodies/Site_Service_API_DuplicateSiteRequest"}, "responses": {"202": {"description": "Site duplication started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site duplication started.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/f1a2b3c4-d5e6-7890-abcd-ef1234567890"}, "parent": {"href": "https://api.acquia.com/v3/sites"}}, "message": "Site duplication started."}}}}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/sites/{siteId}/actions/recover": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Recovers a site that is scheduled for deletion", "operationId": "recoverSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:recover"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "responses": {"202": {"description": "Site recovery started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site recovery started.", "description": "Confirmation message indicating the site recovery has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/11111111-1111-1111-1111-111111111111"}, "parent": {"href": "https://api.acquia.com/v3/sites"}}, "message": "Site recovery started."}}}}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/sites/{siteId}/actions/schedule-delete": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Schedules a site for deletion", "operationId": "scheduleDeleteSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:schedule-delete"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "responses": {"202": {"description": "Site deletion scheduled", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site deletion scheduled.", "description": "Confirmation message indicating the site deletion has been scheduled."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/550e8400-e29b-41d4-a716-446655440002"}, "parent": {"href": "https://api.acquia.com/v3/sites"}}, "message": "Site deletion scheduled."}}}}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/sites": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of sites associated with a codebase.", "operationId": "getSitesByCodebaseId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list-sites"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Site_Service_API_Offset"}, {"$ref": "#/components/parameters/Site_Service_API_Limit"}, {"$ref": "#/components/parameters/Site_Service_API_Filter"}, {"$ref": "#/components/parameters/Site_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_SiteCollection"}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionId}/sites": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of sites associated with a subscription.", "operationId": "getSitesBySubscriptionId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-sites"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SubscriptionId"}, {"$ref": "#/components/parameters/Site_Service_API_Offset"}, {"$ref": "#/components/parameters/Site_Service_API_Limit"}, {"$ref": "#/components/parameters/Site_Service_API_Filter"}, {"$ref": "#/components/parameters/Site_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_SiteCollection"}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/sites": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of sites associated with an environment.", "operationId": "getSitesByEnvironmentId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:list-sites"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Site_Service_API_Offset"}, {"$ref": "#/components/parameters/Site_Service_API_Limit"}, {"$ref": "#/components/parameters/Site_Service_API_Filter"}, {"$ref": "#/components/parameters/Site_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_SiteCollection"}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/domains": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getDomainsBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-domains"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of CDN domains for a subscription", "description": "Retrieves a paginated list of CDN domains for the specified subscription.\n\n**Filtering:**\n - Format: `field=value` or `fieldvalue`\n - AND logic: semicolon (`;`) \u2014 `status=active;application_name=my-app`\n - OR logic: comma (`,`) \u2014 `status=active,status=pending`\n\n**Sorting:**\n- Format: Comma-delimited fields. Prefix with `-` for descending.\n- Example: `domain,-created_at`\n", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}, {"$ref": "#/components/parameters/CDN_API_Filter"}, {"$ref": "#/components/parameters/CDN_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_DomainCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/domains/{domainName}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a domain by domain name.", "description": "Retrieves the full details of a CDN domain within a subscription, identified by its fully qualified domain name.", "operationId": "findDomainBySubscriptionUuidAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_DomainName"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_Domain"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/domains/{domainName}/actions/provision": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "provisionDomainBySubscriptionUuidAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:provision-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Provisions a domain for CDN services", "description": "Provisions a domain for CDN services within a subscription by associating it with an environment.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_DomainName"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_ProvisionCdnForDomainRequest"}, "responses": {"202": {"$ref": "#/components/responses/CDN_API_DomainCdnProvisioningAccepted"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/domains/{domainName}/actions/deprovision": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "deprovisionDomainBySubscriptionUuidAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:deprovision-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Deprovisions a domain from CDN services", "description": "Deprovisions a domain for CDN services within a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_DomainName"}], "responses": {"202": {"$ref": "#/components/responses/CDN_API_DomainCdnDeprovisioningAccepted"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/environments/{environmentId}/actions/purge-cdn": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "purgeCdnByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:purge-cdn"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Creates a CDN cache purge request", "description": "Creates a request to purge cached content from the CDN for the specified environment.\n\n**Resource Types** (specified in the request body):\n- `urls` - Purge specific URLs\n- `tags` - Purge by cache tags\n- `domains` - Purge entire domains\n- `everything` - Purge all content in the environment\n", "parameters": [{"$ref": "#/components/parameters/CDN_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_CreatePurgeRequest"}, "responses": {"202": {"$ref": "#/components/responses/CDN_API_PurgeAccepted"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/rulesets": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getSecurityRuleSetsBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-security-rule-sets"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of security rulesets.", "description": "Retrieves security rulesets for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_SecurityRuleSetCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/rulesets/{ruleSetId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "findSecurityRuleSetBySubscriptionUuidAndRuleSetId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-security-rule-set"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a security ruleset.", "description": "Retrieves a security ruleset for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RuleSetId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_SecurityRuleSet"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "put": {"operationId": "updateSecurityRuleSetBySubscriptionUuidAndRuleSetId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:update-security-rule-set"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Updates a security rulesets.", "description": "Updates a security rulesets for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RuleSetId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_UpdateSecurityRuleSetRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_SecurityRuleSetUpdated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/ip-rules": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getIpRulesBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-ip-rules"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of IP rules.", "description": "Retrieves IP rules for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Filter"}, {"$ref": "#/components/parameters/CDN_API_Sort"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRuleCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "post": {"operationId": "createIpRuleBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-ip-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Creates an IP rule.", "description": "Creates an IP rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_CreateIpRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRuleCreated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/ip-rules/{ipRuleId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "findIpRuleBySubscriptionUuidAndIpRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-ip-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves an IP rule.", "description": "Retrieves an IP rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_IpRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRule"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "put": {"operationId": "updateIpRuleBySubscriptionUuidAndIpRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:update-ip-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Updates an IP rule.", "description": "Updates an IP rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_IpRuleId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_UpdateIpRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRuleUpdated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "delete": {"operationId": "deleteIpRuleBySubscriptionUuidAndIpRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:delete-ip-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Deletes an IP rule.", "description": "Deletes an IP rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_IpRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRuleDeleted"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/custom-rules": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getCustomRulesBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-custom-rules"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of custom security rules.", "description": "Retrieves custom security rules for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRuleCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "post": {"operationId": "createCustomRuleBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-custom-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Creates a custom security rule.", "description": "Creates a custom security rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_CreateCustomRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRuleCreated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/custom-rules/{customRuleId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "findCustomRuleBySubscriptionUuidAndCustomRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-custom-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a custom security rule.", "description": "Retrieves a custom security rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_CustomRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRule"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "put": {"operationId": "updateCustomRuleBySubscriptionUuidAndCustomRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:update-custom-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Updates a custom security rule.", "description": "Updates a custom security rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_CustomRuleId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_UpdateCustomRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRuleUpdated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "delete": {"operationId": "deleteCustomRuleBySubscriptionUuidAndCustomRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:delete-custom-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Deletes a custom security rule.", "description": "Deletes a custom security rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_CustomRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRuleDeleted"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/rate-limiting-rules": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getRateLimitingRulesBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-rate-limiting-rules"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of rate limiting rules.", "description": "Retrieves rate limiting rules for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Filter"}, {"$ref": "#/components/parameters/CDN_API_Sort"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRuleCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "post": {"operationId": "createRateLimitingRuleBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-rate-limiting-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Creates a rate limiting rule.", "description": "Creates a rate limiting rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_CreateRateLimitingRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRuleCreated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/rate-limiting-rules/{rateLimitingRuleId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "findRateLimitingRuleBySubscriptionUuidAndRateLimitingRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-rate-limiting-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a rate limiting rule.", "description": "Retrieves a rate limiting rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RateLimitingRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRule"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "put": {"operationId": "updateRateLimitingRuleBySubscriptionUuidAndRateLimitingRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:update-rate-limiting-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Updates a rate limiting rule.", "description": "Updates a rate limiting rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RateLimitingRuleId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_UpdateRateLimitingRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRuleUpdated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "delete": {"operationId": "deleteRateLimitingRuleBySubscriptionUuidAndRateLimitingRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:delete-rate-limiting-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Deletes a rate limiting rule.", "description": "Deletes a rate limiting rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RateLimitingRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRuleDeleted"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/ssh-keys": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Gets a list of SSH keys.", "description": "Gets a list of all SSH keys accessible to the requester. Each key includes\na `user_id` field identifying the owner.\n\nTo look up the owner of an SSH key by fingerprint or public key, apply a\nmandatory filter: `GET /ssh-keys?filter=fingerprint%3D` or\n`GET /ssh-keys?filter=public_key%3D`. The matching key(s) will\ninclude the `user_id` of the owner.\n\nFilterable fields:\n* `label`\n* `fingerprint`\n* `public_key`\n* `user_id`\n\nSortable fields:\n* `label`\n", "operationId": "getSshKeys", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "ssh-keys:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "ssh-key-service"}}, "tags": ["SSH Keys"], "parameters": [{"$ref": "#/components/parameters/SSH_Key_Service_API_Offset"}, {"$ref": "#/components/parameters/SSH_Key_Service_API_Limit"}, {"$ref": "#/components/parameters/SSH_Key_Service_API_Filter"}, {"$ref": "#/components/parameters/SSH_Key_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/SSH_Key_Service_API_SshKeyCollection"}, "400": {"$ref": "#/components/responses/SSH_Key_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/SSH_Key_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/SSH_Key_Service_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/SSH_Key_Service_API_InternalServerError"}}, "security": [{"SSH_Key_Service_API_BearerAuth": []}]}, "post": {"summary": "Installs a new SSH key for the current user.", "description": "Installs a new SSH key for the current user.", "operationId": "createSshKey", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "ssh-keys:create"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "ssh-key-service"}}, "tags": ["SSH Keys"], "requestBody": {"$ref": "#/components/requestBodies/SSH_Key_Service_API_SshKeyRequestBody"}, "responses": {"202": {"description": "Accepted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Added SSH key.", "description": "Confirmation message."}}}]}, "example": {"message": "Added SSH key.", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/981b7910-2fe9-11e9-b210-d663bd873d93"}}}}}}, "400": {"$ref": "#/components/responses/SSH_Key_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/SSH_Key_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/SSH_Key_Service_API_ForbiddenError"}, "409": {"$ref": "#/components/responses/SSH_Key_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/SSH_Key_Service_API_InternalServerError"}}, "security": [{"SSH_Key_Service_API_BearerAuth": []}]}}, "/ssh-keys/{sshKeyId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Gets an SSH key.", "description": "Gets an SSH key by SSH Key ID.", "operationId": "findSshKeyBySshKeyId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "ssh-keys:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "ssh-key-service"}}, "tags": ["SSH Keys"], "parameters": [{"$ref": "#/components/parameters/SSH_Key_Service_API_SshKeyId"}], "responses": {"200": {"$ref": "#/components/responses/SSH_Key_Service_API_SshKey"}, "401": {"$ref": "#/components/responses/SSH_Key_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/SSH_Key_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/SSH_Key_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/SSH_Key_Service_API_InternalServerError"}}, "security": [{"SSH_Key_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes an SSH key.", "description": "Deletes an SSH key by SSH Key ID.", "operationId": "deleteSshKeyBySshKeyId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "ssh-keys:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "ssh-key-service"}}, "tags": ["SSH Keys"], "parameters": [{"$ref": "#/components/parameters/SSH_Key_Service_API_SshKeyId"}], "responses": {"202": {"description": "Accepted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Removed SSH key.", "description": "Confirmation message."}}}]}, "example": {"message": "Removed SSH key.", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/1acbb1a5-e864-4b8e-a3f9-b1ed462afd25"}}}}}}, "401": {"$ref": "#/components/responses/SSH_Key_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/SSH_Key_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/SSH_Key_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/SSH_Key_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/SSH_Key_Service_API_InternalServerError"}}, "security": [{"SSH_Key_Service_API_BearerAuth": []}]}}, "/failover-groups": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of failover groups.", "operationId": "getFailoverGroups", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "description": "Retrieves a collection of failover groups. Use the `filter` parameter to scope results by source environment.\n\nFilter syntax:\n- By source environment: `filter=environment_id:`\n", "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_Offset"}, {"$ref": "#/components/parameters/Failover_Service_API_Limit"}, {"$ref": "#/components/parameters/Failover_Service_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroupCollection"}, "400": {"$ref": "#/components/responses/Failover_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a new failover group.", "operationId": "createFailoverGroup", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:create"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "requestBody": {"$ref": "#/components/requestBodies/Failover_Service_API_CreateFailoverGroupRequest"}, "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_CreateFailoverGroupResponse"}, "400": {"$ref": "#/components/responses/Failover_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/failover-groups/{failoverGroupId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a failover group by ID.", "operationId": "findFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"200": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroup"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a failover group by ID.", "operationId": "deleteFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_DeleteFailoverGroupResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/failover-groups/{failoverGroupId}/actions/failover": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Initiates failover for a failover group.", "operationId": "failoverFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroupFailoverResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/failover-groups/{failoverGroupId}/actions/revert-failover": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Initiates a revert failover for a failover group.", "operationId": "revertFailoverFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:revert-failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroupRevertFailoverResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/failover-groups/{failoverGroupId}/actions/sync": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Initiates a sync for a failover group.", "operationId": "syncFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:sync"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroupSyncResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/multi-region-failover": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the multi-region failover status for an environment.", "operationId": "findMultiRegionFailoverByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-multi-region-failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Failover_Service_API_MultiRegionFailoverStatus"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}, "put": {"summary": "Enables multi-region failover for an environment.", "operationId": "saveMultiRegionFailoverByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update-multi-region-failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Failover_Service_API_SaveMultiRegionFailoverRequest"}, "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_SaveMultiRegionFailoverResponse"}, "400": {"$ref": "#/components/responses/Failover_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}, "delete": {"summary": "Disables multi-region failover for an environment.", "operationId": "deleteMultiRegionFailoverByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:delete-multi-region-failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_EnvironmentId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_DeleteMultiRegionFailoverResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/tags": {"servers": [{"url": "https://cloud.acquia.com/api-framework/demo-php/api"}], "get": {"summary": "Retrieves a collection of tags.", "operationId": "getTags", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "tags:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "tag-service"}}, "tags": ["Tags"], "parameters": [{"$ref": "#/components/parameters/Tag_API_Offset"}, {"$ref": "#/components/parameters/Tag_API_Limit"}, {"$ref": "#/components/parameters/Tag_API_Filter"}, {"$ref": "#/components/parameters/Tag_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Tag_API_TagCollection"}, "401": {"$ref": "#/components/responses/Tag_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Tag_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Tag_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Tag_API_InternalServerError"}}, "security": [{"Tag_API_BearerAuth": []}]}}, "/tags/{tagName}": {"servers": [{"url": "https://cloud.acquia.com/api-framework/demo-php/api"}], "get": {"summary": "Retrieves a tag by tag name.", "operationId": "findTagByTagName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "tags:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "tag-service"}}, "tags": ["Tags"], "parameters": [{"$ref": "#/components/parameters/Tag_API_TagName"}], "responses": {"200": {"$ref": "#/components/responses/Tag_API_Tag"}, "401": {"$ref": "#/components/responses/Tag_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Tag_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Tag_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Tag_API_InternalServerError"}}, "security": [{"Tag_API_BearerAuth": []}]}, "put": {"summary": "Creates a tag if tag does not exist else updates the tag by tag name.", "operationId": "saveTagByTagName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "tags:update"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "tag-service"}}, "tags": ["Tags"], "parameters": [{"$ref": "#/components/parameters/Tag_API_TagName"}], "requestBody": {"$ref": "#/components/requestBodies/Tag_API_SaveTagRequest"}, "responses": {"202": {"description": "Create/Updates a tag", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The tag has been saved.", "description": "Confirmation message that the tag is saved"}}}]}, "example": {"_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-3"}}, "message": "The tag has been saved."}}}}, "400": {"$ref": "#/components/responses/Tag_API_ValidationError"}, "401": {"$ref": "#/components/responses/Tag_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Tag_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Tag_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Tag_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Tag_API_InternalServerError"}}, "security": [{"Tag_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a tag by tag name.", "operationId": "deleteTagByTagName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "tags:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "tag-service"}}, "tags": ["Tags"], "parameters": [{"$ref": "#/components/parameters/Tag_API_TagName"}], "responses": {"200": {"description": "Deletes a tag", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The tag has been deleted.", "description": "Confirmation message that the tag is deleted"}}}]}, "example": {"_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-1"}}, "message": "The tag has been deleted."}}}}, "401": {"$ref": "#/components/responses/Tag_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Tag_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Tag_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Tag_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Tag_API_InternalServerError"}}, "security": [{"Tag_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/environments": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of environments for the specified codebase.", "operationId": "getEnvironmentsByCodebaseId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list-environments"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_FilterableEnvironmentCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/environments/{environmentId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves details for an environment by codebase and environment ID.", "operationId": "findEnvironmentByCodebaseIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:find-environment"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Environment"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/sites/{siteId}/environments": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of environments for the specified site.", "operationId": "getEnvironmentsBySiteId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:list-environments"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_EnvironmentCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/private-networks/{privateNetworkId}/environments": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of environments associated with the specified private network.", "operationId": "getEnvironmentsByPrivateNetworkId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "private-networks:list-environments"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_PrivateNetworkId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_EnvironmentCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Get environment details.", "operationId": "findEnvironmentByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Environment"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Modifies properties settings for the specified environment.", "operationId": "updateEnvironmentByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_UpdateEnvironmentRequest"}, "responses": {"202": {"description": "Environment update started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Environment update started.", "description": "Confirmation message that the environment update has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}, "message": "Environment update started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/actions/enable-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Enable Environment Protection mode.", "operationId": "enableEnvironmentProtectionModeByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:enable-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Enable protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Environment protection mode enabled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Environment protection mode enabled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/actions/disable-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Disable Environment Protection mode.", "operationId": "disableEnvironmentProtectionModeByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:disable-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Disable protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Environment protection mode disabled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Environment protection mode disabled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/actions/clear-caches": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Clears caches for the specified environment.", "operationId": "clearEnvironmentCachesByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:clear-caches"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_ClearCachesRequest"}, "responses": {"202": {"description": "Cache clear started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Varnish domain cache clear started.", "description": "Confirmation message that the cache clear has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}, "message": "Varnish domain cache clear started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/eips": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of egress IPs for the specified environment.", "operationId": "getEgressIpsByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:list-egress-ips"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_EgressIpCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/private-network": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the private network associated with the specified environment.", "operationId": "findPrivateNetworkByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-private-network"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_PrivateNetwork"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Associates the specified environment with a private network.", "operationId": "saveEnvironmentPrivateNetworkByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:associate-private-network"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_AssociatePrivateNetworkRequest"}, "responses": {"202": {"description": "Private network association started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Associating private network started.", "description": "Confirmation message that the association has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/private-network"}}, "message": "Associating private network started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Disassociates the specified environment from its private network.", "operationId": "deleteEnvironmentPrivateNetworkByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:disassociate-private-network"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Private network disassociation started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Disassociating environment from private network started.", "description": "Confirmation message that the disassociation has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/private-network"}}, "message": "Disassociating environment from private network started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/trusted-proxies": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the trusted proxy configuration for the specified environment.", "operationId": "findTrustedProxiesByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-trusted-proxies"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_TrustedProxies"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates the trusted proxy configuration for the specified environment.", "operationId": "updateTrustedProxiesByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update-trusted-proxies"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_UpdateTrustedProxiesRequest"}, "responses": {"200": {"description": "Trusted proxy configuration updated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Trusted Proxies updated successfully.", "description": "Confirmation message that the configuration has been updated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/trusted-proxies"}}, "message": "Trusted Proxies updated successfully."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/deployments": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of deployments for the specified environment.", "operationId": "getDeploymentsByEnvironmentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:list-deployments"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Filter"}, {"$ref": "#/components/parameters/Environment_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DeploymentCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "post": {"summary": "Starts a deployment for the specified environment.", "operationId": "createDeploymentByEnvironmentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:create-deployment"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_StartDeploymentRequest"}, "responses": {"202": {"description": "Deployment started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Deployment started.", "description": "Confirmation message that the deployment has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}}, "message": "Deployment started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/code-deploy": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the code deploy concurrency setting for the environment.", "operationId": "findCodeDeployByEnvironmentId", "tags": ["Code Deploys"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-code-deploy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_CodeDeploy"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates the code deploy concurrency setting for the environment.", "operationId": "updateCodeDeployByEnvironmentId", "tags": ["Code Deploys"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update-code-deploy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_UpdateCodeDeployRequest"}, "responses": {"200": {"description": "Code deploy concurrency setting updated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Code deploy settings updated successfully.", "description": "Confirmation message that the concurrency setting has been updated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/code-deploy"}}, "message": "Code deploy settings updated successfully."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/site-instances": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Associates a site with the specified environment.", "operationId": "createSiteInstanceByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:create-site-instance"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_CreateSiteInstanceRequest"}, "responses": {"202": {"description": "Site instance creation started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance creation started.", "description": "Confirmation message that site association has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance creation started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/site-instances/actions/reorder": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Updates the priority order of site instances for the environment.", "operationId": "reorderSiteInstancesByEnvironmentId", "tags": ["Site Instances"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:reorder-site-instances"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_ReorderSiteInstancesRequest"}, "responses": {"200": {"description": "Site instances reordered successfully", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instances reordered successfully.", "description": "Confirmation message that the site instances have been reordered."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/site-instances"}}, "message": "Site instances reordered successfully."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Get site instance details.", "operationId": "findSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_SiteInstance"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Dissociates a site and environment with no grace period.", "operationId": "deleteSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Site instance deletion started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance deletion started.", "description": "Confirmation message that the deletion has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance deletion started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/files": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Copies files from one environment to another for the specified site instance.", "operationId": "copySiteInstanceFilesBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:copy-files"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_CopySiteInstanceFilesRequest"}, "responses": {"202": {"description": "File copy started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "File copy started.", "description": "Confirmation message that the file copy has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "File copy started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/cancel": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Dissociates a site and environment.", "operationId": "cancelSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:cancel"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Site instance cancellation started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance cancellation started.", "description": "Confirmation message that the cancellation has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance cancellation started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/enable-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Enable Site Instance Protection mode.", "operationId": "enableSiteInstanceProtectionModeBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:enable-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Enable protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance protection mode enabled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance protection mode enabled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/disable-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Disable Site Instance Protection mode.", "operationId": "disableSiteInstanceProtectionModeBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:disable-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Disable protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance protection mode disabled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance protection mode disabled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/inherit-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Inherit Site Instance Protection mode.", "operationId": "inheritSiteInstanceProtectionModeBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:inherit-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Inherit protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance protection mode inherited from environment.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance protection mode inherited from environment."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/recover": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Recovers a site instance that is scheduled for deletion", "operationId": "recoverSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:recover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Site instance restoration started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance restoration started.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}, "parent": {"href": "https://api.acquia.com/v3/site-instances"}}, "message": "Site instance restoration started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/schedule-delete": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Schedules a site instance for deletion.", "operationId": "scheduleDeleteSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:schedule-delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Site instance deletion scheduled", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance deletion scheduled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}, "parent": {"href": "https://api.acquia.com/v3/site-instances"}}, "message": "Site instance deletion scheduled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/domains": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of domains for the specified site instance.", "operationId": "getDomainsBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:list-domains"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Filter"}, {"$ref": "#/components/parameters/Environment_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DomainCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/domains/{domainName}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves details for the specified domain on a site instance.", "operationId": "findDomainBySiteIdAndEnvironmentIdAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Domain"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Adds a domain to the specified site instance.", "operationId": "saveDomainBySiteIdAndEnvironmentIdAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:update-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}], "responses": {"202": {"description": "Domain addition started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Domain addition started.", "description": "Confirmation message that the domain addition has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com"}}, "message": "Domain addition started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Removes a domain from the specified site instance.", "operationId": "deleteDomainBySiteIdAndEnvironmentIdAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:delete-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}], "responses": {"202": {"description": "Domain removal started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Domain removal started.", "description": "Confirmation message that the domain removal has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com"}}, "message": "Domain removal started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/domains/{domainName}/status": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the DNS status for the specified domain on a site instance.", "operationId": "findDomainStatusBySiteIdAndEnvironmentIdAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-domain-status"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DomainStatus"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves database details for the specified site instance.", "operationId": "findDatabaseBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-database"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Database"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "post": {"summary": "Copies a database from another environment to the specified site instance.", "operationId": "copySiteInstanceDatabaseBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:copy-database"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_CopySiteInstanceDatabaseRequest"}, "responses": {"202": {"description": "Database copy started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Database copy started.", "description": "Confirmation message that the database copy has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database"}}, "message": "Database copy started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database/connection": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves database connection credentials for the specified site instance.", "operationId": "findDatabaseConnectionBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-database-connection"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DatabaseConnection"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database/backups": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of database backups for the specified site instance.", "operationId": "getDatabaseBackupsBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:list-database-backups"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Filter"}, {"$ref": "#/components/parameters/Environment_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DatabaseBackupCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a database backup for the specified site instance.", "operationId": "createDatabaseBackupBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:create-database-backup"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Database backup creation started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Database backup started.", "description": "Confirmation message that the database backup has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups"}}, "message": "Database backup started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database/backups/{backupId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves details for the specified database backup.", "operationId": "findDatabaseBackupBySiteIdAndEnvironmentIdAndBackupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-database-backup"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_BackupId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DatabaseBackup"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes the specified database backup.", "operationId": "deleteDatabaseBackupBySiteIdAndEnvironmentIdAndBackupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:delete-database-backup"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_BackupId"}], "responses": {"202": {"description": "Database backup deletion started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Database backup deletion started.", "description": "Confirmation message that the deletion has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}}, "message": "Database backup deletion started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database/backups/{backupId}/actions/restore": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Restores the specified database backup to the site instance.", "operationId": "restoreDatabaseBackupBySiteIdAndEnvironmentIdAndBackupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:restore-database-backup"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_BackupId"}], "responses": {"202": {"description": "Database backup restore started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Database restore started.", "description": "Confirmation message that the restore has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}}, "message": "Database restore started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/deployments/{deploymentId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the status of a deployment by deployment ID.", "operationId": "findDeploymentByDeploymentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "deployments:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_DeploymentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Deployment"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/deployments/{deploymentId}/actions/stop": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Stops a deployment by sending a stop request.", "operationId": "stopDeploymentByDeploymentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "deployments:stop"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_DeploymentId"}], "responses": {"202": {"description": "Deployment stop initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Deployment stop initiated.", "description": "Confirmation message that the deployment stop has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}}, "message": "Deployment stop initiated."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/deployments/{deploymentId}/actions/terminate": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Terminates a deployment immediately.", "operationId": "terminateDeploymentByDeploymentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "deployments:terminate"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_DeploymentId"}], "responses": {"202": {"description": "Deployment termination is initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Deployment termination initiated.", "description": "Confirmation message that the deployment termination has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}}, "message": "Deployment termination initiated."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/domain-patterns": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of domain patterns for the specified environment.", "operationId": "getDomainPatternsByEnvironmentId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:list-domain-patterns"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DomainPatternCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a domain pattern for the specified environment.", "operationId": "createDomainPatternByEnvironmentId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:create-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_CreateDomainPatternRequest"}, "responses": {"202": {"description": "Domain pattern creation initiated.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern is being applied to all associated sites in this environment.", "description": "Confirmation message that the domain pattern is being applied."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}, "message": "The domain pattern is being applied to all associated sites in this environment."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/domain-patterns/{patternId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a domain pattern by environment ID and pattern ID.", "operationId": "findDomainPatternByEnvironmentIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_PatternId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DomainPattern"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates a domain pattern for the specified environment.", "operationId": "updateDomainPatternByEnvironmentIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_PatternId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_UpdateDomainPatternRequest"}, "responses": {"202": {"description": "Domain pattern update initiated.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern update is being applied to all associated sites in this environment.", "description": "Confirmation message that the domain pattern update is being applied."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}, "message": "The domain pattern update is being applied to all associated sites in this environment."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a domain pattern for the specified environment. Engineering role only.", "operationId": "deleteDomainPatternByEnvironmentIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:delete-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_PatternId"}], "responses": {"202": {"description": "Domain pattern deletion initiated. The 202 covers two async operations: (1) removal of the pattern record and (2) a bulk cleanup that disassociates any URLs already generated from this pattern on all associated site instances in the environment. Both operations complete before the final settled state is observable.\n", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern is being removed from all associated sites in this environment.", "description": "Confirmation message that the domain pattern is being removed."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}, "message": "The domain pattern is being removed from all associated sites in this environment."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionId}/sso-domains": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "createSsoDomainBySubscriptionId", "summary": "Create a new domain for federated SSO.", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-sso-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SubscriptionId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_CreateSsoDomain"}, "responses": {"202": {"description": "Domain creation accepted. The domain is being added to your subscription. To complete verification, add the provided DNS TXT record and call the verify action.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Domain creation has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}}, "message": "Domain creation has been accepted."}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "get": {"summary": "Return a list of domains for a subscription.", "operationId": "getSsoDomainsBySubscriptionId", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-sso-domains"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SubscriptionId"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Offset"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Limit"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Sort"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_SsoDomainCollection"}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionId}/identity-providers": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "createIdentityProviderBySubscriptionId", "summary": "Create a new Identity Provider.", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-identity-provider"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SubscriptionId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_CreateIdentityProvider"}, "responses": {"202": {"description": "Identity Provider creation initiated. The Identity Provider is being provisioned. Poll the Identity Provider resource to check when it becomes active.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Identity Provider creation has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f"}}, "message": "Identity Provider creation has been accepted."}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "get": {"summary": "Return a list of Identity Providers for a subscription.", "operationId": "getIdentityProvidersBySubscriptionId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-identity-providers"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SubscriptionId"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Offset"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Limit"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Sort"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_IdentityProviderCollection"}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/sso-domains": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Return a list of all accessible domains.", "operationId": "getSsoDomains", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sso-domains:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_Offset"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Limit"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Sort"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_SsoDomainCollection"}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/sso-domains/{domainId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Return details about a specific domain.", "operationId": "findSsoDomainBySsoDomainId", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sso-domains:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SsoDomainId"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_SsoDomain"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "delete": {"summary": "Delete a domain.", "operationId": "deleteSsoDomainBySsoDomainId", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sso-domains:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SsoDomainId"}], "responses": {"202": {"description": "Domain deletion accepted. The domain is being deleted.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Domain deletion has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}}, "message": "Domain deletion has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/sso-domains/{domainId}/actions/verify": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Verify domain ownership via DNS TXT record.", "operationId": "verifySsoDomainBySsoDomainId", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sso-domains:verify"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SsoDomainId"}], "responses": {"202": {"description": "Domain verification process initiated. The system will validate the DNS TXT record to confirm domain ownership. Poll the domain resource and check `health.code` to track progress: `202` in progress, `200` verified, `404` record not found.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Domain verification has been accepted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}}, "message": "Domain verification has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Return a list of all accessible Identity Providers.", "operationId": "getIdentityProviders", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_Offset"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Limit"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Sort"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_IdentityProviderCollection"}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers/{identityProviderId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Return details about a specific Identity Provider.", "operationId": "findIdentityProviderByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_IdentityProvider"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "put": {"summary": "Updates an Identity Provider.", "operationId": "updateIdentityProviderByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:update"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_UpdateIdentityProvider"}, "responses": {"202": {"description": "Identity Provider update initiated. The Identity Provider configuration changes are being applied. Poll the Identity Provider resource to verify the changes.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Identity Provider update has been accepted."}}}]}, "example": {"message": "Identity Provider update has been accepted.", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f"}}}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "delete": {"summary": "Deletes an Identity Provider.", "operationId": "deleteIdentityProviderByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"202": {"description": "Identity Provider deletion accepted. The Identity Provider is being deleted.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Identity Provider deletion has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f"}}, "message": "Identity Provider deletion has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers/{identityProviderId}/policies/sso": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Get the SSO policy for an Identity Provider.", "operationId": "findIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:find-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"200": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_SsoPolicy"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}, "example": {"status": "disabled", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "_embedded": {"domains": [{"domain_id": "dom-456", "domain": "acme.com", "subscription_id": "sub-123", "health": {"code": "200", "summary": "Verified", "details": "The DNS TXT record has been confirmed and the domain is verified."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.com", "value": "abc123def456", "health": {"code": "200", "summary": "Verified", "details": "The TXT record at _acquia-challenge.acme.com matches the expected value."}}, "verified_at": "2026-04-15T10:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}, "identity_providers": {"href": "https://api.acquia.com/v3/identity-providers?filter=domain_id%3Ddom-456"}}}, {"domain_id": "dom-789", "domain": "acme.corp", "subscription_id": "sub-123", "health": {"code": "200", "summary": "Verified", "details": "The DNS TXT record has been confirmed and the domain is verified."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.corp", "value": "xyz789abc123", "health": {"code": "200", "summary": "Verified", "details": "The TXT record at _acquia-challenge.acme.corp matches the expected value."}}, "verified_at": "2026-04-20T09:00:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-789"}, "identity_providers": {"href": "https://api.acquia.com/v3/identity-providers?filter=domain_id%3Ddom-789"}}}]}}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "post": {"summary": "Create the SSO policy for an Identity Provider.", "operationId": "createIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:create-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_CreateSsoPolicyRequest"}, "responses": {"202": {"description": "SSO policy creation initiated. The policy is being activated. Poll the SSO policy resource to verify activation.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy creation has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy creation has been accepted."}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "put": {"summary": "Update the SSO policy for an Identity Provider.", "operationId": "updateIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:update-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_UpdateSsoPolicyRequest"}, "responses": {"202": {"description": "SSO policy update initiated. The policy changes are being applied. Poll the SSO policy resource to verify the changes.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy update has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy update has been accepted."}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "delete": {"summary": "Delete the SSO policy for an Identity Provider.", "operationId": "deleteIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:delete-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"202": {"description": "SSO policy deletion initiated. The policy is being deactivated. Poll the Identity Provider resource to verify the policy has been removed.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy deletion has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy deletion has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers/{identityProviderId}/policies/sso/actions/enable": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Enable the SSO policy for an Identity Provider.", "operationId": "enableIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:enable-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"202": {"description": "SSO policy enablement initiated. The policy is being enabled and will enforce domains. Poll the SSO policy resource to verify the status change.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy enablement has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy enablement has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers/{identityProviderId}/policies/sso/actions/disable": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Disable the SSO policy for an Identity Provider.", "operationId": "disableIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:disable-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"202": {"description": "SSO policy disablement initiated. The policy is being disabled and will no longer enforce domains. Poll the SSO policy resource to verify the status change.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy disablement has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy disablement has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}}, "components": {"parameters": {"Codebase_Service_API_codebaseId": {"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, "Codebase_Service_API_patternId": {"$ref": "#/components/parameters/Codebase_Service_API_PatternId"}, "Codebase_Service_API_referenceName": {"$ref": "#/components/parameters/Codebase_Service_API_ReferenceName"}, "Codebase_Service_API_subscriptionId": {"$ref": "#/components/parameters/Codebase_Service_API_SubscriptionId"}, "Codebase_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Codebase_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Codebase_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Codebase_Service_API_CodebaseId": {"name": "codebaseId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the codebase."}, "Codebase_Service_API_ReferenceName": {"name": "referenceName", "in": "path", "required": true, "description": "Name of the git reference (branch or tag). Slashes must be URL-encoded as `%2F` in the path (e.g., `feature%2Fbranch-name`).", "schema": {"type": "string", "pattern": "^[^/]+$"}}, "Codebase_Service_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Codebase_Service_API_PatternId": {"name": "patternId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the domain pattern."}, "Codebase_Service_API_SubscriptionId": {"name": "subscriptionId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the subscription"}, "Site_Service_API_siteId": {"$ref": "#/components/parameters/Site_Service_API_SiteId"}, "Site_Service_API_codebaseId": {"$ref": "#/components/parameters/Site_Service_API_CodebaseId"}, "Site_Service_API_subscriptionId": {"$ref": "#/components/parameters/Site_Service_API_SubscriptionId"}, "Site_Service_API_environmentId": {"$ref": "#/components/parameters/Site_Service_API_EnvironmentId"}, "Site_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Site_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Site_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Site_Service_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Site_Service_API_SiteId": {"name": "siteId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "example": "12345678-1234-1234-1234-123456789012"}, "description": "Unique identifier for the site"}, "Site_Service_API_CodebaseId": {"name": "codebaseId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "example": "550e8400-e29b-41d4-a716-446655441212"}, "description": "Unique identifier for the codebase"}, "Site_Service_API_SubscriptionId": {"name": "subscriptionId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "example": "550e8300-e29b-41d4-a716-446655441212"}, "description": "Unique identifier for the subscription"}, "Site_Service_API_EnvironmentId": {"name": "environmentId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "example": "0ebce493-9d09-479d-a9a8-138a206fa687"}, "description": "Unique identifier for the environment"}, "CDN_API_SubscriptionUuid": {"name": "subscriptionUuid", "in": "path", "required": true, "description": "The unique identifier of the subscription.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_DomainName": {"name": "domainName", "in": "path", "required": true, "description": "The fully qualified domain name.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9]?(\\.[a-zA-Z]{2,})+$"}}, "CDN_API_EnvironmentId": {"name": "environmentId", "in": "path", "required": true, "description": "The unique identifier of the environment.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_RuleSetId": {"name": "ruleSetId", "in": "path", "required": true, "description": "The unique identifier of the security rule set.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_IpRuleId": {"name": "ipRuleId", "in": "path", "required": true, "description": "The unique identifier of the IP rule.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_CustomRuleId": {"name": "customRuleId", "in": "path", "required": true, "description": "The unique identifier of the custom security rule.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_RateLimitingRuleId": {"name": "rateLimitingRuleId", "in": "path", "required": true, "description": "The unique identifier of the rate limiting rule.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "CDN_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "CDN_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "CDN_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "SSH_Key_Service_API_SshKeyId": {"name": "sshKeyId", "in": "path", "description": "The SSH key's unique identifier.", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "example": "981b7910-2fe9-11e9-b210-d663bd873d93"}, "SSH_Key_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "SSH_Key_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "SSH_Key_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals (default if no operator specified)\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `label=primary` - Filter by label equals primary\n- `fingerprint=@SHA256` - Filter by fingerprint containing \"SHA256\"\n- `label=primary;fingerprint=@SHA256` - label is primary AND fingerprint contains SHA256\n- `label=primary,label=backup` - label is primary OR backup\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "label=primary;fingerprint=@SHA256"}, "SSH_Key_Service_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Failover_Service_API_environmentId": {"$ref": "#/components/parameters/Failover_Service_API_EnvironmentId"}, "Failover_Service_API_failoverGroupId": {"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}, "Failover_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Failover_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Failover_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Failover_Service_API_FailoverGroupId": {"name": "failoverGroupId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the failover group."}, "Failover_Service_API_EnvironmentId": {"name": "environmentId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the environment."}, "Tag_API_tagName": {"$ref": "#/components/parameters/Tag_API_TagName"}, "Tag_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Tag_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Tag_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Tag_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Tag_API_TagName": {"name": "tagName", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the tag."}, "Environment_Service_API_environmentId": {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, "Environment_Service_API_siteId": {"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, "Environment_Service_API_deploymentId": {"$ref": "#/components/parameters/Environment_Service_API_DeploymentId"}, "Environment_Service_API_codebaseId": {"$ref": "#/components/parameters/Environment_Service_API_CodebaseId"}, "Environment_Service_API_domainName": {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}, "Environment_Service_API_backupId": {"$ref": "#/components/parameters/Environment_Service_API_BackupId"}, "Environment_Service_API_privateNetworkId": {"$ref": "#/components/parameters/Environment_Service_API_PrivateNetworkId"}, "Environment_Service_API_patternId": {"$ref": "#/components/parameters/Environment_Service_API_PatternId"}, "Environment_Service_API_CodebaseId": {"name": "codebaseId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Codebase identifier"}, "Environment_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Environment_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Environment_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Environment_Service_API_EnvironmentId": {"name": "environmentId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the environment."}, "Environment_Service_API_SiteId": {"name": "siteId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the site."}, "Environment_Service_API_PrivateNetworkId": {"name": "privateNetworkId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Private network identifier"}, "Environment_Service_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Environment_Service_API_DomainName": {"name": "domainName", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?(\\.[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?)*$"}, "description": "The fully-qualified domain name (e.g., www.example.com)."}, "Environment_Service_API_BackupId": {"name": "backupId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Database backup identifier"}, "Environment_Service_API_DeploymentId": {"name": "deploymentId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the deployment."}, "Environment_Service_API_PatternId": {"name": "patternId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the domain pattern."}, "Federated_Authentication_API_SubscriptionId": {"name": "subscriptionId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the subscription."}, "Federated_Authentication_API_SsoDomainId": {"name": "domainId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the domain."}, "Federated_Authentication_API_IdentityProviderId": {"name": "identityProviderId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the identity provider."}, "Federated_Authentication_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Federated_Authentication_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Federated_Authentication_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Federated_Authentication_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}}, "schemas": {"Codebase_Service_API_Codebase": {"type": "object", "properties": {"id": {"type": "string", "description": "Unique identifier for the codebase"}, "label": {"type": "string", "description": "Human-readable label for the codebase"}, "region": {"type": "string", "description": "AWS region of the codebase"}, "vcs_url": {"type": "string", "format": "uri", "description": "VCS repository URL"}, "repository_id": {"type": "string", "description": "VCS repository identifier"}, "created_at": {"type": "string", "format": "date-time", "description": "Creation timestamp"}, "updated_at": {"type": "string", "format": "date-time", "description": "Last update timestamp"}, "description": {"type": "string", "description": "Description of the codebase"}, "flags": {"type": "object", "properties": {"is_active": {"type": "boolean", "description": "Whether the codebase is active"}, "is_meo": {"type": "boolean", "description": "Whether the codebase is MEO"}}, "required": ["is_active", "is_meo"], "description": "Feature flags for the codebase"}, "hash": {"type": "string", "description": "Codebase hash"}, "applications_total": {"type": "integer", "description": "Total number of applications linked to this codebase"}}, "required": ["id", "label", "region", "vcs_url", "repository_id", "created_at", "updated_at", "flags", "hash", "applications_total"]}, "Codebase_Service_API_CodebaseReference": {"type": "object", "properties": {"id": {"type": "string", "description": "Unique identifier for the reference"}, "name": {"type": "string", "description": "Name of the git reference"}, "type": {"type": "string", "enum": ["branch", "tag"], "description": "Type of the git reference"}}, "required": ["id", "name", "type"]}, "Codebase_Service_API_DomainPattern": {"type": "object", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the domain pattern."}, "pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])(?=.*\\[environment-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The domain pattern string, optionally followed by a single path segment (e.g. [site-name].[environment-name].acme.com/app). Both [site-name] and [environment-name] tokens are mandatory at codebase level. Domain rules (enforced in service layer): \u2264 200 chars excluding token placeholders, at least 2 components (must contain .), no IP addresses, no forbidden suffixes (acquia-sites.com, hosting.acquia.com), no wildcards, no leading/trailing dot or hyphen, no consecutive dots, no query string or fragment. Path rules: optional, max 255 chars, must match ^/[A-Za-z0-9._-]+$, max 1 segment. DNS label limit: 63 chars after token substitution ([site-name] \u2264 14 chars, [environment-name] \u2264 10 chars). One pattern per codebase.\n", "example": "[site-name].[environment-name].acme.com"}}, "required": ["id", "pattern"]}, "Codebase_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Codebase_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Codebase_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Codebase_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Codebase_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Codebase_Service_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Codebase_Service_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Codebase_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_Message": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Codebase_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Site_Service_API_Site": {"type": "object", "description": "A Site resource", "properties": {"id": {"type": "string", "description": "The unique identifier of the site", "pattern": "^[a-zA-Z0-9-]+$", "example": "12345678-1234-1234-1234-123456789012"}, "name": {"type": "string", "description": "The machine name of the site. Must start with a lowercase letter and contain only lowercase letters and numbers.", "minLength": 1, "maxLength": 14, "pattern": "^[a-z][a-z0-9]*$", "example": "mysite"}, "label": {"type": "string", "description": "The human-readable label of the site", "minLength": 1, "maxLength": 50, "example": "My Site 1"}, "description": {"type": "string", "description": "A description of the site", "maxLength": 512, "example": "A production site for the marketing team."}, "codebase_id": {"type": "string", "description": "The unique identifier of the codebase this site belongs to", "pattern": "^[a-zA-Z0-9-]+$", "example": "550e8400-e29b-41d4-a716-446655441210"}, "status": {"type": "string", "description": "The current lifecycle status of the site. ready indicates the site is active and operational. marked-for-deletion indicates the site has been scheduled for deletion and can still be recovered.\n", "enum": ["ready", "marked-for-deletion"], "example": "ready"}, "delete_at": {"type": "string", "format": "date-time", "description": "ISO 8601 datetime indicating when the site is scheduled for deletion. Only present when status is marked-for-deletion.", "example": "2025-06-15T00:00:00Z"}}, "required": ["id", "name", "label", "codebase_id", "status"]}, "Site_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Site_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Site_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Site_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Site_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Site_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Site_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Site_Service_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Site_Service_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Site_Service_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Site_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Site_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Site_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Site_Service_API_Message": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Site_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Site_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "CDN_API_Domain": {"type": "object", "description": "CDN domain resource.", "properties": {"domain": {"type": "string", "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9]?(\\.[a-zA-Z]{2,})+$", "description": "The fully qualified domain name."}, "subscription_uuid": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "The unique identifier of the subscription the domain belongs to."}, "environment_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "The environment identifier associated with the domain."}, "application_name": {"type": "string", "description": "The name of the application associated with the domain."}, "status": {"type": "string", "description": "The current status of the domain.", "enum": ["connecting-to-edge", "domain-validation-pending", "ready-for-dns-repointing", "configuration-failed", "configured"]}, "ownership_validation_cname": {"type": "string", "description": "The CNAME record that must be created on the domain's DNS to validate ownership."}, "bandwidth_usage_tb": {"type": "number", "format": "float", "description": "The bandwidth usage for the domain in terabytes."}, "created_at": {"type": "string", "format": "date-time", "description": "The timestamp when the domain was created."}, "updated_at": {"type": "string", "format": "date-time", "description": "The timestamp when the domain was last updated."}}, "required": ["domain", "subscription_uuid", "environment_id", "status", "application_name", "ownership_validation_cname", "bandwidth_usage_tb", "created_at", "updated_at"]}, "CDN_API_SecurityRuleSet": {"type": "object", "properties": {"id": {"type": "integer", "minimum": 1, "description": "The unique identifier of the security ruleset."}, "name": {"type": "string", "description": "The display name of the security ruleset."}, "is_enabled": {"type": "boolean", "description": "Indicates whether the security ruleset is enabled."}, "description": {"type": "string", "description": "The description of the security ruleset."}, "type": {"type": "string", "description": "The type of the security ruleset.", "enum": ["owasp", "acquia-managed"]}}, "required": ["id", "name", "is_enabled"]}, "CDN_API_IpRule": {"type": "object", "properties": {"id": {"type": "integer", "minimum": 1, "description": "The unique identifier of the IP rule."}, "display_name": {"type": "string", "description": "The display name of the IP rule."}, "action": {"type": "string", "enum": ["block", "allow"], "description": "The action applied when the rule matches."}, "description": {"type": "string", "description": "The description of the IP rule."}, "ips": {"type": "array", "description": "The IPs or CIDR blocks associated with the rule.", "items": {"type": "string", "description": "An IP address or CIDR block."}}, "created_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was created."}, "updated_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was last updated."}}, "required": ["id", "display_name", "action", "ips", "created_at", "updated_at"]}, "CDN_API_CustomRule": {"type": "object", "properties": {"id": {"type": "integer", "minimum": 1, "description": "The unique identifier of the custom security rule."}, "display_name": {"type": "string", "description": "The display name of the custom security rule."}, "action": {"type": "string", "enum": ["block", "allow", "alert"], "description": "The action applied when the rule matches."}, "priority": {"type": "integer", "minimum": 1, "description": "The priority order for the rule. Lower values are evaluated first.\nPriorities must be unique within a subscription \u2014 creating or\nupdating a rule with a priority already in use replaces the\nexisting rule at that priority.\n"}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "paths": {"type": "array", "description": "The paths the rule applies to.", "items": {"type": "string", "description": "A path pattern."}}, "mapped_domains_count": {"type": "integer", "description": "The number of domains the rule is mapped to."}, "targets": {"type": "array", "description": "Conditions that must match for the rule to fire.", "items": {"oneOf": [{"description": "Range match for IP or ASN ranges.", "type": "object", "required": ["attribute", "criteria", "value"], "additionalProperties": false, "properties": {"attribute": {"type": "string", "description": "The request attribute the rule inspects.", "enum": ["source-ip", "asn"]}, "criteria": {"type": "string", "description": "How `value` is compared against `attribute`.", "enum": ["range"]}, "value": {"type": "object", "description": "Range bounds for IP or ASN ranges.", "additionalProperties": false, "required": ["from", "to"], "properties": {"from": {"type": "string", "description": "The start of the range."}, "to": {"type": "string", "description": "The end of the range."}}}}}, {"description": "Value-list match for non-header, non-query attributes.", "type": "object", "required": ["attribute", "criteria", "value"], "additionalProperties": false, "properties": {"attribute": {"type": "string", "description": "The request attribute the rule inspects.", "enum": ["source-ip", "country", "method", "path", "asn"]}, "criteria": {"type": "string", "description": "How `value` is compared against `attribute`.", "enum": ["equals", "contains", "regex"]}, "value": {"type": "object", "description": "A list of candidate values combined with OR.", "additionalProperties": false, "required": ["values"], "properties": {"values": {"type": "array", "description": "The list of values.", "items": {"type": "string", "description": "A value."}}}}}}, {"description": "Key-value match for header or query-string attributes.", "type": "object", "required": ["attribute", "criteria", "value"], "additionalProperties": false, "properties": {"attribute": {"type": "string", "description": "The request attribute the rule inspects.", "enum": ["header", "query-string"]}, "criteria": {"type": "string", "description": "How `value` is compared against `attribute`.", "enum": ["equals", "contains", "regex"]}, "value": {"type": "object", "description": "Key-value matchers for header or query-string attributes.", "additionalProperties": false, "required": ["key_value_pairs"], "properties": {"key_value_pairs": {"type": "array", "description": "The list of key-value pairs.", "items": {"type": "object", "description": "A key-value pair.", "required": ["key", "value"], "properties": {"key": {"type": "string", "description": "The header or query-parameter name."}, "value": {"type": "string", "description": "The expected value."}}}}}}}}]}}, "created_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was created."}, "updated_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was last updated."}}, "required": ["id", "display_name", "action", "priority", "domains", "paths", "created_at", "updated_at", "targets"]}, "CDN_API_RateLimitingRule": {"type": "object", "properties": {"id": {"type": "integer", "minimum": 1, "description": "The unique identifier of the rate limiting rule."}, "display_name": {"type": "string", "description": "The display name of the rate limiting rule."}, "action": {"type": "string", "enum": ["block", "alert"], "description": "The action applied when the rule matches."}, "rate_limit_per_minute": {"type": "string", "enum": ["lenient", "moderate", "strict"], "description": "The rate limit category applied to the rule."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "created_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was created."}, "updated_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was last updated."}}, "required": ["id", "display_name", "action", "rate_limit_per_minute", "domains", "created_at", "updated_at"]}, "CDN_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "CDN_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/CDN_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/CDN_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "CDN_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "CDN_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/CDN_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/CDN_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/CDN_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "CDN_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/CDN_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "CDN_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/CDN_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "CDN_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "CDN_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "CDN_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "CDN_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "CDN_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "CDN_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "CDN_API_Message": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "CDN_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"]}, "SSH_Key_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "SSH_Key_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "SSH_Key_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}, {"properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}, {"properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}]}, "SSH_Key_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}, {"properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering."}}, "additionalProperties": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}}}]}, "SSH_Key_Service_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}, {"properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting."}}, "additionalProperties": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}}}]}, "SSH_Key_Service_API_SshKey": {"allOf": [{"type": "object", "required": ["id", "label", "public_key", "fingerprint", "created_at", "user_id"], "description": "Details an SSH key.", "properties": {"id": {"type": "string", "description": "The unique identifier of the SSH key.", "pattern": "^[a-zA-Z0-9-]+$"}, "label": {"type": "string", "description": "The human-readable key label."}, "public_key": {"type": "string", "description": "The public key.", "minLength": 64}, "fingerprint": {"type": "string", "description": "The public key fingerprint.", "pattern": "^[A-Za-z0-9:+/=.-]+$"}, "created_at": {"type": "string", "format": "date-time", "description": "The key creation date."}, "user_id": {"type": "string", "description": "The unique identifier of the user who owns this SSH key.", "pattern": "^[a-zA-Z0-9-]+$"}}}, {"$ref": "#/components/schemas/SSH_Key_Service_API_HalItem"}]}, "SSH_Key_Service_API_SshKeys": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalCollection"}, {"$ref": "#/components/schemas/SSH_Key_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/SSH_Key_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/SSH_Key_Service_API_SortedCollection"}, {"type": "object", "description": "A collection of SSH keys.", "properties": {"_embedded": {"type": "object", "description": "A collection of SSH keys matching the request parameters.", "properties": {"items": {"type": "array", "items": {"$ref": "#/components/schemas/SSH_Key_Service_API_SshKey"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "SSH_Key_Service_API_Message": {"allOf": [{"type": "object", "required": ["message"], "properties": {"message": {"type": "string", "description": "The human-friendly confirmation of the operation."}}}, {"$ref": "#/components/schemas/SSH_Key_Service_API_HalItem"}]}, "SSH_Key_Service_API_ValidationError": {"type": "object", "required": ["error", "message"], "description": "A validation error.", "properties": {"error": {"type": "string", "description": "The error summary."}, "message": {"type": "object", "description": "The validation error message keyed by its field or group name.", "additionalProperties": {"type": "string"}}}}, "SSH_Key_Service_API_Error": {"type": "object", "required": ["error", "message"], "properties": {"error": {"type": "string", "description": "The error summary."}, "message": {"type": "string", "description": "The long description for the returned error."}}}, "SSH_Key_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Failover_Service_API_FailoverGroup": {"type": "object", "properties": {"id": {"type": "string", "description": "Unique identifier for the failover group.", "example": "b2c3d4e5-f6a7-8901-bcde-f12345678901"}, "name": {"type": "string", "description": "The name of the failover group.", "example": "Primary Failover Group"}, "status": {"type": "string", "enum": ["creating", "normal", "failed-over", "failing-over", "error", "deleting", "deleted"], "description": "The current status of the failover group.", "example": "normal"}, "pairs": {"type": "array", "description": "The list of failover pairs belonging to this failover group.", "items": {"$ref": "#/components/schemas/Failover_Service_API_FailoverPair"}}}, "required": ["id", "name", "status", "pairs"]}, "Failover_Service_API_FailoverPair": {"type": "object", "properties": {"service_name": {"type": "string", "description": "The name of the service for this failover pair.", "example": "my-application-service"}, "primary_id": {"type": "string", "description": "The ID of the primary resource in the failover pair.", "example": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"}, "failover_id": {"type": "string", "description": "The UUID of the failover resource in the failover pair.", "example": "f1e2d3c4-b5a6-7890-fedc-ba9876543210"}}, "required": ["service_name", "primary_id", "failover_id"]}, "Failover_Service_API_MultiRegionFailoverStatus": {"type": "object", "properties": {"is_enabled": {"type": "boolean", "description": "Whether multi-region failover is enabled for the environment."}, "failover_group_id": {"type": "string", "description": "The identifier of the failover group associated with the environment."}, "is_traffic_failed_over": {"type": "boolean", "description": "Whether traffic has been failed over to the secondary region."}}, "required": ["is_enabled"]}, "Failover_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Failover_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Failover_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Failover_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Failover_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Failover_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Failover_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Failover_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Failover_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Failover_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Failover_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Failover_Service_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Failover_Service_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Failover_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Failover_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Failover_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Failover_Service_API_Message": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Failover_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "Failover_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Tag_API_Tag": {"type": "object", "properties": {"name": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "minLength": 1, "maxLength": 255, "description": "The name of the tag"}, "color": {"type": "string", "pattern": "^#((?:[a-f0-9]{3}){1,2})$", "minLength": 4, "maxLength": 7, "description": "The color of the tag"}}, "required": ["name", "color"]}, "Tag_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Tag_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Tag_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Tag_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Tag_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Tag_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Tag_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Tag_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Tag_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Tag_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Tag_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Tag_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Tag_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Tag_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Tag_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Tag_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Tag_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Tag_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Tag_API_Message": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Tag_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Tag_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "Environment_Service_API_SiteInstance": {"type": "object", "description": "Site Instance properties", "properties": {"site_id": {"type": "string", "description": "The unique identifier of the site", "pattern": "^[a-zA-Z0-9-]+$"}, "environment_id": {"type": "string", "description": "The unique identifier of the environment", "pattern": "^[a-zA-Z0-9-]+$"}, "status": {"type": "string", "description": "The current status of the site instance", "enum": ["active", "creating", "create-failed", "updating", "update-failed", "deleting", "deleted", "delete-failed"]}, "health_status": {"type": "object", "description": "Health status information for the site instance", "properties": {"code": {"type": "string", "description": "Health status code"}, "summary": {"type": "string", "description": "Summary of the health status"}, "details": {"type": "string", "description": "Detailed health status information"}}, "required": ["code", "summary", "details"]}, "domains": {"type": "array", "description": "List of domains associated with the site instance", "items": {"type": "string"}}, "deployment_order": {"type": ["integer", "null"], "description": "The order in which this site instance is deployed relative to others.", "example": 1}, "delete_at": {"type": ["string", "null"], "format": "date-time", "description": "The scheduled deletion date-time for this site instance, if set."}, "date_marked_for_deletion": {"type": ["string", "null"], "format": "date-time", "description": "The date-time when this site instance was marked for deletion."}, "protection_mode": {"type": ["object", "null"], "description": "The current protection mode of the site instance", "properties": {"is_enabled": {"type": "boolean", "description": "Indicates whether the protection mode is enabled for the site instance"}, "is_inherited": {"type": "boolean", "description": "Indicates whether the protection mode is inherited from the environment"}}, "required": ["is_enabled", "is_inherited"]}}, "required": ["site_id", "environment_id", "status", "health_status", "domains"]}, "Environment_Service_API_Environment": {"type": "object", "description": "Environment properties", "properties": {"id": {"type": "string", "description": "The unique identifier of the environment", "pattern": "^[a-zA-Z0-9-]+$"}, "name": {"type": "string", "description": "The machine name of the environment"}, "label": {"type": "string", "description": "The human-readable label of the environment"}, "description": {"type": "string", "description": "A description of the environment"}, "status": {"type": "string", "description": "The current status of the environment", "enum": ["normal", "allocated", "launching", "killed", "cancelled", "stopped"]}, "flags": {"type": "object", "description": "Environment configuration flags", "additionalProperties": {"type": "boolean"}}, "properties": {"type": "object", "description": "Environment PHP and server properties", "properties": {"version": {"type": "string", "description": "PHP version"}, "max_execution_time": {"type": "integer", "description": "Maximum execution time in seconds"}, "memory_limit": {"type": "integer", "description": "Memory limit in MB"}, "apcu": {"type": "integer", "description": "APCu cache size in MB"}, "client_max_body_size": {"type": "integer", "description": "Maximum client body size in MB"}, "max_input_vars": {"type": "integer", "description": "Maximum number of input variables"}, "max_post_size": {"type": "integer", "description": "Maximum POST size in MB"}, "memcached_limit": {"type": "integer", "description": "Memcached limit in MB"}, "upload_max_filesize": {"type": "integer", "description": "Maximum upload file size in MB"}, "operating_system": {"type": "string", "description": "Operating system codename"}}}, "reference": {"type": "string", "description": "The code reference (branch, tag, or commit) deployed to this environment"}, "code_switch_status": {"type": "string", "description": "The status of the Switch Code action", "enum": ["IDLE", "IN_PROGRESS"]}, "ssh_url": {"type": "string", "format": "uri", "description": "The SSH connection string for accessing this environment"}}, "required": ["id", "name", "label", "status", "flags", "properties", "reference", "code_switch_status", "ssh_url"]}, "Environment_Service_API_EmbeddedCodebase": {"type": "object", "description": "Embedded codebase resource", "properties": {"id": {"type": "string", "description": "The unique identifier of the codebase"}}, "required": ["id"]}, "Environment_Service_API_Deployment": {"type": "object", "description": "Deployment properties", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the deployment."}, "environment_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Identifier of the environment this deployment belongs to."}, "status": {"type": "string", "description": "Current status of the deployment.", "enum": ["waiting", "received", "started", "done", "failed", "error", "killed"]}, "code_reference": {"type": "string", "description": "The code reference (e.g. branch or tag) deployed."}, "run_hooks": {"type": "boolean", "description": "Whether deployment hooks were run."}, "hooks_argument": {"type": ["string", "null"], "description": "Additional arguments passed to deployment hooks."}, "created_at": {"type": "string", "format": "date-time", "description": "Timestamp when the deployment was created."}, "started_at": {"type": ["string", "null"], "format": "date-time", "description": "Timestamp when the deployment started."}, "completed_at": {"type": ["string", "null"], "format": "date-time", "description": "Timestamp when the deployment completed."}, "sender_id": {"type": ["string", "null"], "description": "Identifier of the user or system that initiated the deployment."}, "logs": {"type": ["string", "null"], "description": "Deployment log output."}}, "required": ["id", "environment_id", "status", "code_reference", "run_hooks", "created_at"]}, "Environment_Service_API_CodeDeploy": {"type": "object", "properties": {"concurrency": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Maximum number of concurrent code deploys allowed for the environment."}}, "required": ["concurrency"]}, "Environment_Service_API_Domain": {"type": "object", "description": "Domain properties", "properties": {"name": {"type": "string", "description": "The domain name."}, "is_managed": {"type": "boolean", "description": "Whether the domain is managed by Acquia."}}, "required": ["name", "is_managed"]}, "Environment_Service_API_DomainStatus": {"type": "object", "description": "Domain DNS status properties", "properties": {"hostname": {"type": "string", "description": "The domain name."}, "site_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Identifier of the site this domain belongs to."}, "environment_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Identifier of the environment this domain belongs to."}, "ip_addresses": {"type": "array", "description": "List of IP addresses resolving for this domain.", "items": {"type": "string"}}, "cnames": {"type": "array", "description": "List of CNAME records resolving for this domain.", "items": {"type": "string"}}, "flags": {"type": "object", "description": "Status flags for the domain.", "properties": {"default": {"type": "boolean", "description": "Whether this is the default domain."}, "active": {"type": "boolean", "description": "Whether the domain is active."}, "dns_resolves": {"type": "boolean", "description": "Whether the domain DNS resolves correctly."}, "acquia_hosted": {"type": "boolean", "description": "Whether the domain is hosted on Acquia infrastructure."}}, "required": ["default", "active", "dns_resolves", "acquia_hosted"]}}, "required": ["hostname", "site_id", "environment_id", "ip_addresses", "cnames", "flags"]}, "Environment_Service_API_Database": {"type": "object", "description": "Database properties", "properties": {"database_name": {"type": "string", "description": "The name of the database."}, "database_role": {"type": "string", "description": "The role of the database (e.g. the site username)."}}, "required": ["database_name", "database_role"]}, "Environment_Service_API_DatabaseConnection": {"type": "object", "description": "Database connection credential properties", "properties": {"db_host": {"type": "string", "description": "The database host."}, "name": {"type": "string", "description": "The database name."}, "password": {"type": "string", "description": "The database password."}, "user_name": {"type": "string", "description": "The database username."}, "ssh_host": {"type": "string", "description": "The SSH host for tunneling to the database."}}, "required": ["db_host", "name", "password", "user_name", "ssh_host"]}, "Environment_Service_API_DatabaseBackup": {"type": "object", "description": "Database backup properties", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the database backup."}, "database_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Identifier of the database this backup belongs to."}, "created_at": {"type": "string", "format": "date-time", "description": "Timestamp when the backup was created."}, "type": {"type": "string", "enum": ["DAILY", "ON_DEMAND"], "description": "The type of backup."}}, "required": ["id", "database_id", "created_at", "type"]}, "Environment_Service_API_EgressIp": {"type": "object", "description": "Egress IP properties", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the egress IP."}, "status": {"type": "string", "description": "Current status of the egress IP."}, "ipv4": {"type": "string", "description": "The IPv4 address."}, "ipv6": {"type": ["string", "null"], "description": "The IPv6 address, if assigned."}, "flags": {"type": "object", "description": "Status flags for the egress IP.", "additionalProperties": {"type": "boolean"}}}, "required": ["id", "status", "ipv4", "flags"]}, "Environment_Service_API_TrustedProxies": {"type": "object", "description": "Trusted proxy configuration properties", "properties": {"cidrs_ipv4": {"type": "array", "description": "List of trusted IPv4 CIDR blocks.", "items": {"type": "string"}}, "cidrs_ipv6": {"type": "array", "description": "List of trusted IPv6 CIDR blocks.", "items": {"type": "string"}}, "associated_cdns": {"type": "object", "description": "Map of CDN configurations associated with this environment, keyed by CDN name.", "additionalProperties": {"type": "object", "properties": {"label": {"type": "string", "description": "Display label for the CDN."}, "is_enabled": {"type": "boolean", "description": "Whether the CDN is enabled."}}, "required": ["label", "is_enabled"]}}}, "required": ["cidrs_ipv4", "cidrs_ipv6", "associated_cdns"]}, "Environment_Service_API_PrivateNetwork": {"type": "object", "description": "Private network reference properties", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the private network."}, "label": {"type": ["string", "null"], "description": "Human-readable label for the private network."}}, "required": ["id"]}, "Environment_Service_API_DomainPattern": {"type": "object", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the domain pattern."}, "pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The domain pattern string, optionally followed by a single path segment (e.g. [site-name].acme.com/app). The [site-name] token is mandatory; [environment-name] is optional at environment level. Domain rules (enforced in service layer): \u2264 200 chars excluding token placeholders, at least 2 components (must contain .), no IP addresses, no forbidden suffixes (acquia-sites.com, hosting.acquia.com), no wildcards, no leading/trailing dot or hyphen, no consecutive dots, no query string or fragment. Path rules: optional, max 255 chars, must match ^/[A-Za-z0-9._-]+$, max 1 segment. DNS label limit: 63 chars after token substitution ([site-name] \u2264 14 chars). One pattern per environment.\n", "example": "[site-name].acme.com"}}, "required": ["id", "pattern"]}, "Environment_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Environment_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Environment_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Environment_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Environment_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Environment_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Environment_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Environment_Service_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Environment_Service_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Environment_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Environment_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Environment_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Environment_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Environment_Service_API_Message": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Environment_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "Environment_Service_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Federated_Authentication_API_IdentityProvider": {"type": "object", "properties": {"identity_provider_id": {"type": "string", "description": "Unique identifier for the identity provider."}, "label": {"type": "string", "description": "The name of the Identity Provider."}, "subscription_id": {"type": "string", "description": "Unique identifier for the subscription that the Identity Provider belongs to."}, "idp_entity_id": {"type": "string", "format": "uri", "description": "The Identity Provider Entity ID."}, "sp_entity_id": {"type": "string", "format": "uri", "description": "The Service Provider Entity ID."}, "sso_url": {"type": "string", "format": "uri", "description": "The Single Sign-On URL for the Identity Provider."}, "certificate": {"type": "string", "description": "The X.509 certificate used for SAML authentication."}, "created_at": {"type": "string", "format": "date-time", "description": "Timestamp when the Identity Provider was created."}}, "required": ["identity_provider_id", "label", "subscription_id", "idp_entity_id", "sp_entity_id", "sso_url", "certificate", "created_at"]}, "Federated_Authentication_API_SsoDomain": {"type": "object", "properties": {"domain_id": {"type": "string", "description": "Unique identifier for the domain."}, "domain": {"type": "string", "pattern": "^[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?(\\.[a-zA-Z]{2,})+$", "description": "The domain name (e.g., \"acme.com\")."}, "subscription_id": {"type": "string", "description": "Unique identifier for the subscription that the domain belongs to."}, "health": {"type": "object", "description": "The overall verification health of the domain. Uses the same code semantics as the platform email domain-verification system: `200` verified, `202` verification pending or in progress, `404` DNS record not found or could not be validated.", "properties": {"code": {"type": "string", "enum": ["200", "202", "404"], "description": "Machine-readable verification status code. `200` \u2014 verified. `202` \u2014 verification pending or in progress; retry after propagation. `404` \u2014 DNS TXT record not found or does not match expected value."}, "summary": {"type": "string", "description": "Short human-readable label for the verification state (e.g., \"Verified\", \"Verification pending\", \"Missing DNS record\")."}, "details": {"type": "string", "description": "Actionable explanation of the current state. For `404`, describes what was checked and what the customer should do next."}}, "required": ["code", "summary", "details"]}, "verification_record": {"type": "object", "description": "DNS TXT record the customer must publish to verify domain ownership.", "properties": {"type": {"type": "string", "const": "TXT", "description": "DNS record type."}, "host": {"type": "string", "description": "DNS record host name."}, "value": {"type": "string", "description": "Expected DNS record value."}, "health": {"type": "object", "description": "Verification health specific to this DNS record. Anchors the failure reason to the exact record the customer needs to fix, matching the per-record health pattern used in platform email domain verification.", "properties": {"code": {"type": "string", "enum": ["200", "202", "404"], "description": "`200` \u2014 record found and value matches. `202` \u2014 check in progress. `404` \u2014 record not found or value does not match."}, "summary": {"type": "string", "description": "Short human-readable label for this record's verification state."}, "details": {"type": "string", "description": "Actionable explanation; for `404`, states what was checked and what to fix."}}, "required": ["code", "summary", "details"]}}, "required": ["type", "host", "value", "health"]}, "verified_at": {"type": "string", "format": "date-time", "description": "Timestamp when the domain was successfully verified. Present only when `health.code` is `200`."}}, "required": ["domain_id", "domain", "subscription_id", "health", "verification_record"]}, "Federated_Authentication_API_SsoPolicy": {"type": "object", "description": "SSO policy that enforces an Identity Provider for specific domains.", "properties": {"status": {"type": "string", "enum": ["enabled", "disabled"], "default": "disabled", "description": "The status of the SSO policy. When enabled, the policy enforces SSO for the specified domains. Defaults to disabled on creation."}, "_embedded": {"type": "object", "description": "Embedded resources for the SSO policy.", "properties": {"domains": {"type": "array", "description": "The SSO domains enforced by this policy, each with a self link back to the authoritative SsoDomain resource.", "items": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_SsoDomain"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}}}, "required": ["domains"]}}, "required": ["status", "_embedded"]}, "Federated_Authentication_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Federated_Authentication_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Federated_Authentication_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Federated_Authentication_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Federated_Authentication_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Federated_Authentication_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Federated_Authentication_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Federated_Authentication_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Federated_Authentication_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Federated_Authentication_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Federated_Authentication_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Federated_Authentication_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Federated_Authentication_API_Message": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Federated_Authentication_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}}, "responses": {"Codebase_Service_API_Codebase": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Codebase"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}, "example": {"id": "a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4", "label": "my-codebase", "region": "us-east-1", "vcs_url": "https://github.com/acquia/my-codebase.git", "repository_id": "12345678", "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-15T10:30:00Z", "description": "Main production codebase", "flags": {"is_active": true, "is_meo": false}, "hash": "abc123def456", "applications_total": 3, "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}}}}}, "Codebase_Service_API_CodebaseCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_FilteredCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Codebase"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"codebase_collection": {"summary": "Codebase collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases?limit=10&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/codebases?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases?limit=10{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/codebases?limit=10&offset=0{&filter}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 10, "offset": 0}, "_embedded": {"items": [{"id": "a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4", "label": "my-codebase", "region": "us-east-1", "vcs_url": "https://github.com/acquia/my-codebase.git", "repository_id": "12345678", "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-15T10:30:00Z", "description": "Main production codebase", "flags": {"is_active": true, "is_meo": false}, "hash": "abc123def456", "applications_total": 3, "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}}]}}}}}}}, "Codebase_Service_API_CodebaseReference": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_CodebaseReference"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}, "example": {"id": "ref-123", "name": "main", "type": "branch", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references/main"}}}}}}, "Codebase_Service_API_CodebaseReferenceCollection": {"description": "A list of git references for the codebase", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_CodebaseReference"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references?limit=10&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references?limit=10{&offset}", "templated": true}}, "count": 2, "total": 2, "pagination": {"total": 2, "limit": 10, "offset": 0}, "_embedded": {"items": [{"id": "ref-123", "name": "main", "type": "branch", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references/main"}}}, {"id": "ref-456", "name": "v1.0.0", "type": "tag", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references/v1.0.0"}}}]}}}}}, "Codebase_Service_API_DomainPattern": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_DomainPattern"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}, "example": {"id": "22222222-2222-2222-2222-222222222222", "pattern": "[site-name].[environment-name].acme.com", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}}}}, "links": {"self": {"operationId": "findDomainPatternByCodebaseIdAndPatternId", "parameters": {"codebaseId": "$request.path.codebaseId", "patternId": "$request.path.patternId"}}}}, "Codebase_Service_API_DomainPatternCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_DomainPattern"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"domain_pattern_collection": {"summary": "Domain pattern collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns"}, "limit": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?limit=25{&offset}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?limit=25&offset=0{&sort}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 25, "offset": 0}, "_embedded": {"items": [{"id": "22222222-2222-2222-2222-222222222222", "pattern": "[site-name].[environment-name].acme.com", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}}]}}}, "domain_pattern_collection_empty": {"summary": "Empty domain pattern collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns"}, "limit": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?limit=25{&offset}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?limit=25&offset=0{&sort}", "templated": true}}, "count": 0, "total": 0, "pagination": {"total": 0, "limit": 25, "offset": 0}, "_embedded": {"items": []}}}}}}}, "Codebase_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Codebase_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Codebase_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Codebase_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Codebase_Service_API_SubscriptionCodebaseCollection": {"description": "A list of codebases for the subscription", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_FilteredCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Codebase"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"subscription_codebase_collection": {"summary": "Subscription codebase collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/sub-12345/codebases?limit=10&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/sub-12345/codebases?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/sub-12345/codebases?limit=10{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/sub-12345/codebases?limit=10&offset=0{&filter}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 10, "offset": 0}, "_embedded": {"items": [{"id": "a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4", "label": "my-codebase", "region": "us-east-1", "vcs_url": "https://github.com/acquia/my-codebase.git", "repository_id": "12345678", "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-15T10:30:00Z", "description": "Main production codebase", "flags": {"is_active": true, "is_meo": false}, "hash": "abc123def456", "applications_total": 3, "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}}]}}}}}}}, "Codebase_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Codebase_Service_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Site_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Site_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Site_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Site_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Site_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Site_Service_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Site_Service_API_Site": {"description": "Site details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Site"}, {"$ref": "#/components/schemas/Site_Service_API_HalItem"}, {"type": "object", "properties": {"_links": {"properties": {"self": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}, "codebase": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/f1a2b3c4-d5e6-7890-abcd-ef1234567890"}, "codebase": {"href": "https://api.acquia.com/v3/codebases/a9b8c7d6-e5f4-3210-abcd-ef9876543210"}}, "id": "f1a2b3c4-d5e6-7890-abcd-ef1234567890", "name": "mysite", "label": "My Site", "description": "This is a description of my site.", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210", "status": "ready"}}}, "links": {"self": {"operationId": "findSiteBySiteId", "parameters": {"siteId": "$request.path.siteId"}}}}, "Site_Service_API_SiteCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Site_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Site_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/Site_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Site"}, {"$ref": "#/components/schemas/Site_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"site_collection": {"summary": "Site collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/sites?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/sites?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/sites?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/sites?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/sites?limit=2&offset=2"}}, "count": 2, "total": 4, "pagination": {"total": 4, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "f1a2b3c4-d5e6-7890-abcd-ef1234567890", "name": "mysite", "label": "My Site", "description": "A description of my site.", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210", "status": "ready", "_links": {"self": {"href": "https://api.acquia.com/v3/sites/f1a2b3c4-d5e6-7890-abcd-ef1234567890"}}}, {"id": "e2b3c4d5-f6a7-8901-bcde-f12345678901", "name": "anothersite", "label": "Another Site", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210", "status": "marked-for-deletion", "delete_at": "2025-01-01T00:00:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sites/e2b3c4d5-f6a7-8901-bcde-f12345678901"}}}]}}}}}}}, "CDN_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "CDN_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "CDN_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "CDN_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "CDN_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "CDN_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "CDN_API_DomainCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"$ref": "#/components/schemas/CDN_API_FilteredCollection"}, {"$ref": "#/components/schemas/CDN_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Domain"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"domains_response": {"summary": "Domain collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2&offset=2"}}, "count": 2, "total": 50, "pagination": {"total": 50, "limit": 2, "offset": 0}, "_embedded": {"items": [{"domain": "example.com", "subscription_uuid": "12345678-1234-1234-1234-123456789012", "environment_id": "0c3f0f5f-5727-4838-9459-2d90ee1cf7c1", "application_name": "my-application", "status": "configured", "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-20T15:45:00Z", "ownership_validation_cname": "_acme-challenge.example.com", "bandwidth_usage_tb": 1.25, "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/example.com"}}}, {"domain": "test.example.org", "subscription_uuid": "12345678-1234-1234-1234-123456789012", "environment_id": "1d4f1f6f-6838-5949-a560-3e01ff2cf8d2", "application_name": "test-application", "status": "connecting-to-edge", "created_at": "2024-01-18T08:15:00Z", "ownership_validation_cname": "_acme-challenge.example.com", "bandwidth_usage_tb": 1.25, "updated_at": "2024-01-18T08:15:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/test.example.org"}}}]}}}}}}}, "CDN_API_Domain": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Domain"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"domain": "example.com", "subscription_uuid": "12345678-1234-1234-1234-123456789012", "environment_id": "0c3f0f5f-5727-4838-9459-2d90ee1cf7c1", "application_name": "my-application", "status": "configured", "ownership_validation_cname": "_acme-challenge.example.com", "bandwidth_usage_tb": 1.25, "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-20T15:45:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/example.com"}}}}}, "links": {"self": {"operationId": "findDomainBySubscriptionUuidAndDomainName", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "domainName": "$request.path.domainName"}}}}, "CDN_API_DomainCdnProvisioningAccepted": {"description": "Accepted - Provisioning in progress", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain provisioning has been started.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/example.com"}}, "message": "The domain provisioning has been started."}}}}, "CDN_API_DomainCdnDeprovisioningAccepted": {"description": "Accepted - Deprovisioning in progress", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain deprovisioning has been started.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/example.com"}}, "message": "The domain deprovisioning has been started."}}}}, "CDN_API_PurgeAccepted": {"description": "Accepted - Purge request submitted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The purge request has been submitted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/0c3f0f5f-5727-4838-9459-2d90ee1cf7c1/actions/purge-cdn"}}, "message": "The purge request has been submitted."}}}}, "CDN_API_SecurityRuleSet": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_SecurityRuleSet"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"id": 1, "name": "OWASP Top 10", "is_enabled": true, "description": "OWASP Top 10 security ruleset", "type": "owasp", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets/1"}}}}}, "links": {"self": {"operationId": "findSecurityRuleSetBySubscriptionUuidAndRuleSetId", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "ruleSetId": "$request.path.ruleSetId"}}}}, "CDN_API_SecurityRuleSetCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_SecurityRuleSet"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"security_rule_sets_response": {"summary": "Security rulesets collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets?limit=2{&offset}", "templated": true}}, "count": 2, "total": 5, "pagination": {"total": 5, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": 123, "name": "OWASP Core Ruleset", "is_enabled": true, "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets/123"}}}, {"id": 456, "name": "Bot Protection", "is_enabled": false, "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets/456"}}}]}}}}}}}, "CDN_API_SecurityRuleSetUpdated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The security ruleset has been updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets/123"}}, "message": "The security ruleset has been updated."}}}}, "CDN_API_IpRule": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_IpRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"id": 101, "display_name": "Block office VPN", "action": "allow", "description": "Allow traffic from the office VPN", "ips": ["203.0.113.0/24"], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}}}}, "links": {"self": {"operationId": "findIpRuleBySubscriptionUuidAndIpRuleId", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "ipRuleId": "$request.path.ipRuleId"}}}}, "CDN_API_IpRuleCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"$ref": "#/components/schemas/CDN_API_FilteredCollection"}, {"$ref": "#/components/schemas/CDN_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_IpRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"ip_rules_response": {"summary": "IP rules collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?offset=2&limit=2"}}, "count": 2, "total": 5, "pagination": {"total": 5, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": 101, "display_name": "Block office IPs", "action": "block", "description": "Blocks office IP ranges.", "ips": ["192.0.2.10", "198.51.100.0/24"], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}}, {"id": 102, "display_name": "Allow support", "action": "allow", "description": "Allows support traffic.", "ips": ["203.0.113.5"], "created_at": "2026-05-02T08:15:00Z", "updated_at": "2026-05-11T13:45:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/102"}}}]}}}}}}}, "CDN_API_IpRuleCreated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The IP rule has been created.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}, "message": "The IP rule has been created."}}}}, "CDN_API_IpRuleUpdated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The IP rule has been updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}, "message": "The IP rule has been updated."}}}}, "CDN_API_IpRuleDeleted": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The IP rule has been deleted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}, "message": "The IP rule has been deleted."}}}}, "CDN_API_CustomRuleCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_CustomRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"custom_rules_response": {"summary": "Custom rules collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules?limit=2{&offset}", "templated": true}}, "count": 2, "total": 5, "pagination": {"total": 5, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": 301, "display_name": "Block bad bots", "action": "block", "priority": 1, "domains": ["example.com"], "paths": ["/api/*"], "targets": [{"attribute": "source-ip", "criteria": "range", "value": {"from": "10.0.0.0", "to": "10.0.0.255"}}], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}}, {"id": 302, "display_name": "Alert login scans", "action": "alert", "priority": 2, "domains": ["shop.example.com"], "paths": ["/login"], "targets": [{"attribute": "path", "criteria": "equals", "value": {"values": ["/login"]}}], "created_at": "2026-05-02T08:15:00Z", "updated_at": "2026-05-11T13:45:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/302"}}}]}}}}}}}, "CDN_API_CustomRule": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_CustomRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"id": 301, "display_name": "Block bad bots", "action": "block", "priority": 1, "domains": ["example.com"], "paths": ["/api/*"], "targets": [{"attribute": "source-ip", "criteria": "range", "value": {"from": "10.0.0.0", "to": "10.0.0.255"}}, {"attribute": "header", "criteria": "equals", "value": {"key_value_pairs": [{"key": "User-Agent", "value": "BadBot/1.0"}]}}], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}}}}, "links": {"self": {"operationId": "findCustomRuleBySubscriptionUuidAndCustomRuleId", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "customRuleId": "$request.path.customRuleId"}}}}, "CDN_API_CustomRuleCreated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The custom security rule has been created.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}, "message": "The custom security rule has been created."}}}}, "CDN_API_CustomRuleDeleted": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The custom security rule has been deleted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}, "message": "The custom security rule has been deleted."}}}}, "CDN_API_RateLimitingRuleCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"$ref": "#/components/schemas/CDN_API_FilteredCollection"}, {"$ref": "#/components/schemas/CDN_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_RateLimitingRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"rate_limiting_rules_response": {"summary": "Rate limiting rules collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2&offset=2"}}, "count": 2, "total": 4, "pagination": {"total": 4, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": 501, "display_name": "Rate Rule 1", "action": "alert", "rate_limit_per_minute": "lenient", "domains": ["example.com"], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}}, {"id": 502, "display_name": "Rate Rule 2", "action": "block", "rate_limit_per_minute": "strict", "domains": ["shop.example.com"], "created_at": "2026-05-02T08:15:00Z", "updated_at": "2026-05-11T13:45:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/502"}}}]}}}}}}}, "CDN_API_RateLimitingRule": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_RateLimitingRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"id": 501, "display_name": "Rate Rule 1", "action": "alert", "rate_limit_per_minute": "lenient", "domains": ["example.com"], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}}}}, "links": {"self": {"operationId": "findRateLimitingRuleBySubscriptionUuidAndRateLimitingRuleId", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "rateLimitingRuleId": "$request.path.rateLimitingRuleId"}}}}, "CDN_API_RateLimitingRuleCreated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The rate limiting rule has been created.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}, "message": "The rate limiting rule has been created."}}}}, "CDN_API_RateLimitingRuleUpdated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The rate limiting rule has been updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}, "message": "The rate limiting rule has been updated."}}}}, "CDN_API_RateLimitingRuleDeleted": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The rate limiting rule has been deleted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}, "message": "The rate limiting rule has been deleted."}}}}, "CDN_API_CustomRuleUpdated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The custom security rule has been updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}, "message": "The custom security rule has been updated."}}}}, "SSH_Key_Service_API_SshKeyCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_SshKeys"}, "examples": {"ssh_keys": {"summary": "SSH key collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/ssh-keys?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2&offset=2"}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "1acbb1a5-e864-4b8e-a3f9-b1ed462afd25", "label": "primary", "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQChwPHzTTDKDpSbpa2+d22LcbQmsw92eLsUK3Fmei1fiGDkd34NsYCN8m7lsi3NbvdMS83CtPQPWiCveYPzFs1/hHc4PYj8opD2CNnr5iWVVbyaulCYHCgVv4aB/ojcexg8q483A4xJeF15TiCr/gu34rK6ucTvC/tn/rCwJBudczvEwt0klqYwv8Cl/ytaQboSuem5KgSjO3lMrb6CWtfSNhE43ZOw+UBFBqxIninN868vGMkIv9VY34Pwj54rPn/ItQd6Ef4B0KHHaGmzK0vfP+AK7FxNMoHnj3iYT33KZNqtDozdn5tYyH/bThPebEtgqUn+/w5l6wZIC/8zzvls/127ngHk+jNa0PlNyS2TxhPUK4NaPHIEnnrlp07JEYC4ImcBjaYCWAdcTcUkcJjwZQkN4bGmyO9cjICH98SdLD/HxqzTHeaYDbAX/Hu9HfaBb5dXLWsjw3Xc6hoVnUUZbMQyfgb0KgxDLh92eNGxJkpZiL0VDNOWCxDWsNpzwhLNkLqCvI6lyxiLaUzvJAk6dPaRhExmCbU1lDO2eR0FdSwC1TEhJOT9eDIK1r2hztZKs2oa5FNFfB/IFHVWasVFC9N2h/r/egB5zsRxC9MqBLRBq95NBxaRSFng6ML5WZSw41Qi4C/JWVm89rdj2WqScDHYyAdwyyppWU4T5c9Fmw== example@example.com", "fingerprint": "SHA256:7a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8g9h0i1j2k3l4m5n6o7p8q9r0s1", "created_at": "2024-10-01T12:30:00Z", "user_id": "a47ac10b-58cc-4372-a567-0e02b2c3d479", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/1acbb1a5-e864-4b8e-a3f9-b1ed462afd25"}}}, {"id": "2bcbb1a5-e864-4b8e-a3f9-b1ed462afd26", "label": "backup", "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFf2T1I1d8T1B9Q1b8pS6m2xvY3i5q8sNnU5oQwY5vS9 example@example.com", "fingerprint": "SHA256:9b8c7d6e5f4a3b2c1d0e9f8a7b6c5d4e3f2a1b0c9d8e7f6a5b4c3d2e1f0a9b8", "created_at": "2024-10-02T09:15:00Z", "user_id": "b58bd21c-69dd-5483-b678-1f13c3d4e580", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/2bcbb1a5-e864-4b8e-a3f9-b1ed462afd26"}}}]}}}}}}}, "SSH_Key_Service_API_SshKey": {"description": "OK", "content": {"application/hal+json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_SshKey"}, "example": {"id": "1acbb1a5-e864-4b8e-a3f9-b1ed462afd25", "label": "primary", "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQChwPHzTTDKDpSbpa2+d22LcbQmsw92eLsUK3Fmei1fiGDkd34NsYCN8m7lsi3NbvdMS83CtPQPWiCveYPzFs1/hHc4PYj8opD2CNnr5iWVVbyaulCYHCgVv4aB/ojcexg8q483A4xJeF15TiCr/gu34rK6ucTvC/tn/rCwJBudczvEwt0klqYwv8Cl/ytaQboSuem5KgSjO3lMrb6CWtfSNhE43ZOw+UBFBqxIninN868vGMkIv9VY34Pwj54rPn/ItQd6Ef4B0KHHaGmzK0vfP+AK7FxNMoHnj3iYT33KZNqtDozdn5tYyH/bThPebEtgqUn+/w5l6wZIC/8zzvls/127ngHk+jNa0PlNyS2TxhPUK4NaPHIEnnrlp07JEYC4ImcBjaYCWAdcTcUkcJjwZQkN4bGmyO9cjICH98SdLD/HxqzTHeaYDbAX/Hu9HfaBb5dXLWsjw3Xc6hoVnUUZbMQyfgb0KgxDLh92eNGxJkpZiL0VDNOWCxDWsNpzwhLNkLqCvI6lyxiLaUzvJAk6dPaRhExmCbU1lDO2eR0FdSwC1TEhJOT9eDIK1r2hztZKs2oa5FNFfB/IFHVWasVFC9N2h/r/egB5zsRxC9MqBLRBq95NBxaRSFng6ML5WZSw41Qi4C/JWVm89rdj2WqScDHYyAdwyyppWU4T5c9Fmw== example@example.com", "fingerprint": "SHA256:7a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8g9h0i1j2k3l4m5n6o7p8q9r0s1", "created_at": "2024-10-01T12:30:00Z", "user_id": "a47ac10b-58cc-4372-a567-0e02b2c3d479", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/1acbb1a5-e864-4b8e-a3f9-b1ed462afd25"}}}}}, "links": {"self": {"operationId": "findSshKeyBySshKeyId", "parameters": {"sshKeyId": "$request.path.sshKeyId"}}}}, "SSH_Key_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "SSH_Key_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "SSH_Key_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "SSH_Key_Service_API_ValidationError": {"description": "Bad Request - Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required."}}}}}, "SSH_Key_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "SSH_Key_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Failover_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Failover_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Failover_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Failover_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Failover_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Failover_Service_API_FailoverGroupCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Failover_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Failover_Service_API_FilteredCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_FailoverGroup"}, {"$ref": "#/components/schemas/Failover_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"failover_group_collection": {"summary": "Failover group collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/failover-groups?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/failover-groups?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/failover-groups?limit=2&offset=0{&filter}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901", "name": "Primary Failover Group", "status": "normal", "pairs": [{"service_name": "my-application-service", "primary_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "failover_id": "f1e2d3c4-b5a6-7890-fedc-ba9876543210"}], "_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}}]}}}}}}}, "Failover_Service_API_FailoverGroup": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_FailoverGroup"}, {"$ref": "#/components/schemas/Failover_Service_API_HalItem"}]}, "example": {"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901", "name": "Primary Failover Group", "status": "normal", "pairs": [{"service_name": "my-application-service", "primary_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "failover_id": "f1e2d3c4-b5a6-7890-fedc-ba9876543210"}], "_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}}}}, "links": {"self": {"operationId": "findFailoverGroupByFailoverGroupId", "parameters": {"failoverGroupId": "$request.path.failoverGroupId"}}}}, "Failover_Service_API_MultiRegionFailoverStatus": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_MultiRegionFailoverStatus"}, {"$ref": "#/components/schemas/Failover_Service_API_HalItem"}]}, "example": {"is_enabled": true, "failover_group_id": "b2c3d4e5-f6a7-8901-bcde-f12345678901", "is_traffic_failed_over": false, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/a1b2c3d4-e5f6-7890-abcd-ef1234567890/multi-region-failover"}}}}}, "links": {"self": {"operationId": "findMultiRegionFailoverByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Failover_Service_API_CreateFailoverGroupResponse": {"description": "Failover group creation initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group creation has been initiated.", "description": "Confirmation message that the failover group creation has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group creation has been initiated."}}}}, "Failover_Service_API_DeleteFailoverGroupResponse": {"description": "Failover group deletion initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group deletion has been initiated.", "description": "Confirmation message that the failover group deletion has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group deletion has been initiated."}}}}, "Failover_Service_API_FailoverGroupFailoverResponse": {"description": "Failover group failover initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group failover initiated.", "description": "Confirmation message that the failover group failover has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group failover initiated."}}}}, "Failover_Service_API_FailoverGroupRevertFailoverResponse": {"description": "Failover group revert failover initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group revert failover initiated.", "description": "Confirmation message that the failover group revert failover has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group revert failover initiated."}}}}, "Failover_Service_API_FailoverGroupSyncResponse": {"description": "Failover group sync initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group sync initiated.", "description": "Confirmation message that the failover group sync has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group sync initiated."}}}}, "Failover_Service_API_SaveMultiRegionFailoverResponse": {"description": "Multi-region failover enable initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Multi-region failover enable has been initiated.", "description": "Confirmation message that multi-region failover enable has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/a1b2c3d4-e5f6-7890-abcd-ef1234567890/multi-region-failover"}}, "message": "Multi-region failover enable has been initiated."}}}}, "Failover_Service_API_DeleteMultiRegionFailoverResponse": {"description": "Multi-region failover disable initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Multi-region failover disable has been initiated.", "description": "Confirmation message that multi-region failover disable has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/a1b2c3d4-e5f6-7890-abcd-ef1234567890/multi-region-failover"}}, "message": "Multi-region failover disable has been initiated."}}}}, "Failover_Service_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Tag_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Tag_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Tag_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Tag_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Tag_API_TagCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalCollection"}, {"$ref": "#/components/schemas/Tag_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Tag_API_FilteredCollection"}, {"$ref": "#/components/schemas/Tag_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Tag"}, {"$ref": "#/components/schemas/Tag_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"tag_response": {"summary": "Tag collection with pagination", "value": {"_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2&offset=2"}, "limit": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?offset=2{&limit}", "templated": true}, "offset": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2{&offset}", "templated": true}, "filter": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2&offset=2{&filter}", "templated": true}, "sort": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2&offset=2{&sort}", "templated": true}, "prev": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2&offset=0"}, "next": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?offset=4&limit=2"}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"name": "tag-1", "color": "#ffffff", "_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-1"}}}, {"name": "tag-2", "color": "#000000", "_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-2"}}}]}}}}}}}, "Tag_API_Tag": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Tag"}, {"$ref": "#/components/schemas/Tag_API_HalItem"}]}, "example": {"name": "tag-1", "color": "#ffffff", "_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-1"}}}}}, "links": {"self": {"operationId": "findTagByTagName", "parameters": {"tagName": "$request.path.tagName"}}}}, "Tag_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Tag_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Environment_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Environment_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Environment_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Environment_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Environment_Service_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Environment_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Environment_Service_API_DeploymentCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Deployment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"deployment_response": {"summary": "Deployment collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=2"}, "limit": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?offset=2{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=2{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=2{&sort}", "templated": true}, "prev": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=0"}, "next": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=4"}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "status": "done", "code_reference": "tags/v1.0.0", "run_hooks": true, "hooks_argument": null, "sender_id": null, "created_at": "2025-04-01T13:01:06.603Z", "started_at": "2025-04-01T13:01:10.123Z", "completed_at": "2025-04-01T13:05:00.000Z", "_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}, "environment": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}}, {"id": "f1dae0f8-67c7-5d1e-cbe1-1f7604f77de4", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "status": "failed", "code_reference": "tags/v0.9.0", "run_hooks": false, "hooks_argument": null, "sender_id": null, "created_at": "2025-03-28T09:15:00.000Z", "started_at": "2025-03-28T09:15:05.000Z", "completed_at": "2025-03-28T09:18:00.000Z", "_links": {"self": {"href": "https://api.acquia.com/v3/deployments/f1dae0f8-67c7-5d1e-cbe1-1f7604f77de4"}, "environment": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}}]}}}}}}}, "Environment_Service_API_Deployment": {"description": "Deployment details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Deployment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"id": "e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "status": "started", "code_reference": "tags/v1.0.0", "run_hooks": true, "hooks_argument": "--skip-db-update", "created_at": "2025-04-01T13:01:06.603Z", "started_at": "2025-04-01T13:01:10.123Z", "completed_at": null, "sender_id": null, "logs": null, "_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}, "environment": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}}}}, "links": {"self": {"operationId": "findDeploymentByDeploymentId", "parameters": {"deploymentId": "$request.path.deploymentId"}}}}, "Environment_Service_API_CodeDeploy": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_CodeDeploy"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"concurrency": 5, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/code-deploy"}}}}}, "links": {"self": {"operationId": "findCodeDeployByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_Environment": {"description": "Environment details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Environment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"codebase": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_EmbeddedCodebase"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}, "codebase": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "name": "environment_3e8ecbec-ea7c-4260-8414-ef2938c859bc", "label": "Environment_3e8ecbec-ea7c-4260-8414-ef2938c859bc", "description": "Description of 3e8ecbec-ea7c-4260-8414-ef2938c859bc", "status": "normal", "flags": {"production": false, "protection_mode": false}, "properties": {"version": "8.3", "max_execution_time": 10, "memory_limit": 192, "apcu": 32, "client_max_body_size": 192, "max_input_vars": 1000, "max_post_size": 256, "memcached_limit": 128, "upload_max_filesize": 192, "operating_system": "focal"}, "reference": "tag/v3.1", "code_switch_status": "IDLE", "ssh_url": "ssh://site.dev@sitedev.ssh.hosted.acquia-sites.com", "_embedded": {"codebase": {"id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323"}}}}}}}, "links": {"self": {"operationId": "findEnvironmentByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_EnvironmentCollection": {"description": "Environment collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Environment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/sites/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/sites/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2{&offset}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "name": "dev", "label": "Dev", "description": "Development environment", "status": "normal", "reference": "branch/main", "code_switch_status": "IDLE", "ssh_url": "ssh://site.dev@sitedev.ssh.hosted.acquia-sites.com", "flags": {"production": false, "protection_mode": false}, "properties": {"version": "8.3"}, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}}]}}}}}, "Environment_Service_API_FilterableEnvironmentCollection": {"description": "Environment collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_FilteredCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Environment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2&offset=0{&filter}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "name": "dev", "label": "Dev", "description": "Development environment", "status": "normal", "reference": "branch/main", "code_switch_status": "IDLE", "ssh_url": "ssh://site.dev@sitedev.ssh.hosted.acquia-sites.com", "flags": {"production": false, "protection_mode": false}, "properties": {"version": "8.3"}, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}}]}}}}}, "Environment_Service_API_SiteInstance": {"description": "Site Instance details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_SiteInstance"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "site_id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "status": "active", "health_status": {"code": "OK", "summary": "The health status is OK.", "details": "The site instance is active"}, "domains": ["example.com", "example-2.com"], "protection_mode": {"is_enabled": true, "is_inherited": true}}}}, "links": {"self": {"operationId": "findSiteInstanceBySiteIdAndEnvironmentId", "parameters": {"siteId": "$request.path.siteId", "environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_Domain": {"description": "Domain details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Domain"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"name": "example.com", "is_managed": false, "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com"}}}}}, "links": {"self": {"operationId": "findDomainBySiteIdAndEnvironmentIdAndDomainName", "parameters": {"siteId": "$request.path.siteId", "environmentId": "$request.path.environmentId", "domainName": "$request.path.domainName"}}}}, "Environment_Service_API_DomainCollection": {"description": "Domain collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Domain"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?limit=2&offset=0{&sort}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"name": "example.com", "is_managed": false, "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com"}}}]}}}}}, "Environment_Service_API_DomainStatus": {"description": "Domain DNS status details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DomainStatus"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"hostname": "example.com", "site_id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "ip_addresses": ["203.0.113.10"], "cnames": [], "flags": {"default": false, "active": true, "dns_resolves": true, "acquia_hosted": true}, "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com/status"}}}}}}, "Environment_Service_API_Database": {"description": "Database details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Database"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"database_name": "site_dev", "database_role": "site_dev_user", "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database"}}}}}, "links": {"self": {"operationId": "findDatabaseBySiteIdAndEnvironmentId", "parameters": {"siteId": "$request.path.siteId", "environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_DatabaseConnection": {"description": "Database connection credential details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DatabaseConnection"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"db_host": "db.example.com", "name": "site_dev", "password": "s3cr3t", "user_name": "site_dev_user", "ssh_host": "site.dev.ssh.hosted.acquia-sites.com", "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/connection"}}}}}}, "Environment_Service_API_DatabaseBackup": {"description": "Database backup details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DatabaseBackup"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "database_id": "b2c3d4e5-f6a7-8901-bcde-f01234567891", "created_at": "2025-04-01T02:00:00.000Z", "type": "DAILY", "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}, "download": {"href": "https://s3.amazonaws.com/acquia-backups/backup-a1b2c3d4.sql.gz?X-Amz-Expires=3600&X-Amz-Signature=abc123"}}}}}, "links": {"self": {"operationId": "findDatabaseBackupBySiteIdAndEnvironmentIdAndBackupId", "parameters": {"siteId": "$request.path.siteId", "environmentId": "$request.path.environmentId", "backupId": "$request.path.backupId"}}}}, "Environment_Service_API_DatabaseBackupCollection": {"description": "Database backup collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DatabaseBackup"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?limit=2&offset=0{&sort}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "database_id": "b2c3d4e5-f6a7-8901-bcde-f01234567891", "created_at": "2025-04-01T02:00:00.000Z", "type": "DAILY", "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}}}]}}}}}, "Environment_Service_API_EgressIpCollection": {"description": "Egress IP collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_EgressIp"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/eips?limit=25&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/eips?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/eips?limit=25{&offset}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 25, "offset": 0}, "_embedded": {"items": [{"id": "eip-a1b2c3d4-e5f6-7890-abcd-ef1234567890", "status": "active", "ipv4": "203.0.113.10", "ipv6": null, "flags": {"is_primary": true}}]}}}}}, "Environment_Service_API_TrustedProxies": {"description": "Trusted proxy configuration details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_TrustedProxies"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"cidrs_ipv4": ["203.0.113.0/24"], "cidrs_ipv6": [], "associated_cdns": {"cloudflare": {"label": "Cloudflare", "is_enabled": true}}, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/trusted-proxies"}}}}}, "links": {"self": {"operationId": "findTrustedProxiesByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_PrivateNetwork": {"description": "Private network details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_PrivateNetwork"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"id": "pn-a1b2c3d4-e5f6-7890-abcd-ef1234567890", "label": "Production VPC", "_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/private-network"}}}}}, "links": {"self": {"operationId": "findPrivateNetworkByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_DomainPattern": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DomainPattern"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"id": "11111111-1111-1111-1111-111111111111", "pattern": "[site-name].acme.com", "_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}}}}, "links": {"self": {"operationId": "findDomainPatternByEnvironmentIdAndPatternId", "parameters": {"environmentId": "$request.path.environmentId", "patternId": "$request.path.patternId"}}}}, "Environment_Service_API_DomainPatternCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DomainPattern"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"domain_pattern_collection": {"summary": "Domain pattern collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns"}, "limit": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?limit=25{&offset}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?limit=25&offset=0{&sort}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 25, "offset": 0}, "_embedded": {"items": [{"id": "11111111-1111-1111-1111-111111111111", "pattern": "[site-name].acme.com", "_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}}]}}}, "domain_pattern_collection_empty": {"summary": "Empty domain pattern collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns"}, "limit": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?limit=25{&offset}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?limit=25&offset=0{&sort}", "templated": true}}, "count": 0, "total": 0, "pagination": {"total": 0, "limit": 25, "offset": 0}, "_embedded": {"items": []}}}}}}}, "Federated_Authentication_API_IdentityProvider": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_IdentityProvider"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}, "example": {"identity_provider_id": "908914ec-2354-4fb1-9298-637247eccc3a", "label": "Acme Corporation Azure AD", "subscription_id": "sub-123", "idp_entity_id": "https://idp.acme.com/saml", "sp_entity_id": "https://sp.acme.com/saml", "sso_url": "https://acme.com/sso", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----", "created_at": "2026-04-15T11:00:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/908914ec-2354-4fb1-9298-637247eccc3a"}, "sso_policy": {"href": "https://api.acquia.com/v3/identity-providers/908914ec-2354-4fb1-9298-637247eccc3a/policies/sso"}}}}}, "links": {"self": {"operationId": "findIdentityProviderByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}, "update": {"operationId": "updateIdentityProviderByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}, "delete": {"operationId": "deleteIdentityProviderByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}, "enable_sso_policy": {"operationId": "enableIdentityProviderSSOPolicyByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}, "disable_sso_policy": {"operationId": "disableIdentityProviderSSOPolicyByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}}}, "Federated_Authentication_API_IdentityProviderCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_FilteredCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_IdentityProvider"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"identity_provider_response": {"summary": "Identity provider collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2&offset=2"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?offset=2{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2&offset=2{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2&offset=2{&sort}", "templated": true}, "prev": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2&offset=0"}, "next": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?offset=4&limit=2"}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"identity_provider_id": "908914ec-2354-4fb1-9298-637247eccc3a", "label": "Acme Corporation Azure AD", "subscription_id": "sub-123", "idp_entity_id": "https://idp.acme.com/saml", "sp_entity_id": "https://sp.acme.com/saml", "sso_url": "https://acme.com/sso", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----", "created_at": "2026-04-15T11:00:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/908914ec-2354-4fb1-9298-637247eccc3a"}, "sso_policy": {"href": "https://api.acquia.com/v3/identity-providers/908914ec-2354-4fb1-9298-637247eccc3a/policies/sso"}}}, {"identity_provider_id": "123456ec-2354-4fb1-9298-637247eccc3b", "label": "Acme Research Ping Identity", "subscription_id": "sub-123", "idp_entity_id": "https://idp-research.acme.com/saml", "sp_entity_id": "https://sp-research.acme.com/saml", "sso_url": "https://research.acme.com/sso", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----", "created_at": "2026-04-20T14:20:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/123456ec-2354-4fb1-9298-637247eccc3b"}, "sso_policy": {"href": "https://api.acquia.com/v3/identity-providers/123456ec-2354-4fb1-9298-637247eccc3b/policies/sso"}}}]}}}}}}}, "Federated_Authentication_API_SsoDomain": {"description": "OK. The `_links` object always contains `self`. Additional links are state-conditional: `verify` is present when `health.code` is `202` or `404` (POST it to initiate or retry DNS TXT record verification); `identity_providers` is present when the domain is referenced by one or more Identity Provider policies (follows to a filtered list of those IdPs; when present the domain cannot be deleted \u2014 remove it from all policies first).", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_SsoDomain"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}, "examples": {"pending_verification": {"summary": "Domain awaiting DNS verification", "description": "A newly created domain whose DNS TXT record has not yet been confirmed. `health.code` is `202`; the `verify` link is present so the client can trigger or retry the check. `identity_providers` is absent because no policy can reference an unverified domain.", "value": {"domain_id": "dom-789", "domain": "acme.corp", "subscription_id": "sub-123", "health": {"code": "202", "summary": "Verification pending", "details": "Acquia is waiting to confirm the DNS TXT record. Ensure the record has been published and allow time for DNS propagation, then retry verification."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.corp", "value": "xyz789abc123", "health": {"code": "202", "summary": "Check in progress", "details": "The TXT record check has not yet completed."}}, "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-789"}, "verify": {"href": "https://api.acquia.com/v3/sso-domains/dom-789/actions/verify"}}}}, "failed_verification": {"summary": "Domain verification failed \u2014 DNS record not found", "description": "A domain whose TXT record could not be found. `health.code` is `404`; `details` names the exact record to check. The `verify` link is present so the client can retry after fixing the DNS entry.", "value": {"domain_id": "dom-789", "domain": "acme.corp", "subscription_id": "sub-123", "health": {"code": "404", "summary": "Missing DNS record", "details": "Acquia could not verify the presence of the required TXT DNS record at _acquia-challenge.acme.corp. Ensure the record is published with the correct value and retry verification."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.corp", "value": "xyz789abc123", "health": {"code": "404", "summary": "Missing DNS record", "details": "The TXT record at _acquia-challenge.acme.corp was not found or does not match the expected value xyz789abc123."}}, "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-789"}, "verify": {"href": "https://api.acquia.com/v3/sso-domains/dom-789/actions/verify"}}}}, "verified_in_use": {"summary": "Verified domain referenced by an Identity Provider policy", "description": "A verified domain enforced by at least one Identity Provider policy. `health.code` is `200`; `verify` is absent; `identity_providers` is present. A DELETE on this domain will return 409 until the domain is removed from all policies.", "value": {"domain_id": "dom-456", "domain": "acme.com", "subscription_id": "sub-123", "health": {"code": "200", "summary": "Verified", "details": "The DNS TXT record has been confirmed and the domain is verified."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.com", "value": "abc123def456", "health": {"code": "200", "summary": "Verified", "details": "The TXT record at _acquia-challenge.acme.com matches the expected value."}}, "verified_at": "2026-04-15T10:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}, "identity_providers": {"href": "https://api.acquia.com/v3/identity-providers?filter=domain_id%3Ddom-456"}}}}}}}, "links": {"self": {"operationId": "findSsoDomainBySsoDomainId", "parameters": {"domainId": "$response.body#/domain_id"}}, "delete": {"operationId": "deleteSsoDomainBySsoDomainId", "parameters": {"domainId": "$response.body#/domain_id"}}, "verify": {"operationId": "verifySsoDomainBySsoDomainId", "parameters": {"domainId": "$response.body#/domain_id"}}}}, "Federated_Authentication_API_SsoDomainCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_FilteredCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_SsoDomain"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"domain_response": {"summary": "Domain collection with pagination", "description": "Two domains in different states: one verified and in use by a policy (carries `identity_providers` link), one pending verification (carries `verify` link).", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?offset=2&limit=2"}}, "count": 2, "total": 3, "pagination": {"total": 3, "limit": 2, "offset": 0}, "_embedded": {"items": [{"domain_id": "dom-456", "domain": "acme.com", "subscription_id": "sub-123", "health": {"code": "200", "summary": "Verified", "details": "The DNS TXT record has been confirmed and the domain is verified."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.com", "value": "abc123def456", "health": {"code": "200", "summary": "Verified", "details": "The TXT record at _acquia-challenge.acme.com matches the expected value."}}, "verified_at": "2026-04-15T10:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}, "identity_providers": {"href": "https://api.acquia.com/v3/identity-providers?filter=domain_id%3Ddom-456"}}}, {"domain_id": "dom-789", "domain": "acme.corp", "subscription_id": "sub-123", "health": {"code": "202", "summary": "Verification pending", "details": "Acquia is waiting to confirm the DNS TXT record. Ensure the record has been published and allow time for DNS propagation, then retry verification."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.corp", "value": "xyz789abc123", "health": {"code": "202", "summary": "Check in progress", "details": "The TXT record check has not yet completed."}}, "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-789"}, "verify": {"href": "https://api.acquia.com/v3/sso-domains/dom-789/actions/verify"}}}]}}}}}}}, "Federated_Authentication_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Federated_Authentication_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Federated_Authentication_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Federated_Authentication_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Federated_Authentication_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Federated_Authentication_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}}, "requestBodies": {"Codebase_Service_API_CreateCodebaseRequest": {"description": "Codebase creation request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"codebase_id": {"type": "string", "format": "uuid", "description": "Client-supplied UUID for the new codebase"}, "label": {"type": "string", "description": "Human-readable label for the codebase"}, "region": {"type": "string", "description": "AWS region where the codebase will be created"}}, "required": ["codebase_id", "label", "region"], "additionalProperties": false}, "examples": {"create": {"summary": "Create a codebase", "description": "Creates a new codebase for a subscription", "value": {"codebase_id": "a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4", "label": "my-codebase", "region": "us-east-1"}}}}}}, "Codebase_Service_API_CreateDomainPatternRequest": {"description": "Create domain pattern request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])(?=.*\\[environment-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The domain pattern to apply to all associated sites in this codebase, optionally followed by a single path segment. Both [site-name] and [environment-name] tokens are mandatory. Domain \u2264 200 chars excluding token placeholders; optional path max 255 chars matching ^/[A-Za-z0-9._-]+$. Additional semantic rules (no IPs, no forbidden suffixes, no wildcards, one pattern per codebase) are enforced at the service layer.\n"}}, "required": ["pattern"], "additionalProperties": false}, "examples": {"create_domain_pattern": {"summary": "Create a domain pattern", "value": {"pattern": "[site-name].[environment-name].acme.com"}}}}}}, "Codebase_Service_API_UpdateCodebaseRequest": {"description": "Codebase update request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"label": {"type": "string", "description": "Human-readable label for the codebase"}, "description": {"type": "string", "description": "Description of the codebase"}}, "minProperties": 1, "additionalProperties": false}, "examples": {"update": {"summary": "Update a codebase", "description": "Updates an existing codebase's label and description", "value": {"label": "updated-codebase-label", "description": "Updated codebase description"}}}}}}, "Codebase_Service_API_UpdateDomainPatternRequest": {"description": "Update domain pattern request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])(?=.*\\[environment-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The updated domain pattern to apply to all associated sites in this codebase, optionally followed by a single path segment. Both [site-name] and [environment-name] tokens are mandatory. Domain \u2264 200 chars excluding token placeholders; optional path max 255 chars matching ^/[A-Za-z0-9._-]+$. Additional semantic rules (no IPs, no forbidden suffixes, no wildcards, one pattern per codebase) are enforced at the service layer.\n"}}, "required": ["pattern"], "additionalProperties": false, "minProperties": 1}, "examples": {"update_domain_pattern": {"summary": "Update a domain pattern", "value": {"pattern": "[site-name].[environment-name].acme.com"}}}}}}, "Site_Service_API_DuplicateSiteRequest": {"description": "Site duplication request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"environment_mapping": {"type": "array", "items": {"type": "string", "pattern": "^[a-zA-Z0-9-]+:[a-zA-Z0-9-]+$", "description": "Environment mapping in the format 'sourceEnvId:targetEnvId'"}, "description": "Array of environment mappings. You must provide exactly one environment mapping. Each entry maps a source environment ID to a target environment ID, separated by a colon.\n", "minItems": 1, "maxItems": 1, "example": ["0ebce493-9d09-479d-a9a8-138a206fa687:a1b2c3d4-e5f6-7890-abcd-ef1234567890"]}, "site_name": {"type": "string", "description": "Machine name for the duplicated site. Must start with a lowercase letter and contain only lowercase letters and numbers. Maximum 14 characters.\n", "minLength": 1, "maxLength": 14, "pattern": "^[a-z][a-z0-9]*$", "example": "dupsite"}, "site_label": {"type": "string", "description": "Human-readable label for the duplicated site. Must only contain letters, numbers, and spaces. Maximum 50 characters.\n", "minLength": 1, "maxLength": 50, "example": "Duplicated Site"}, "site_id": {"type": "string", "format": "uuid", "description": "An optional explicit UUID for the new duplicated site. A UUID is generated automatically if omitted.", "example": "f1a2b3c4-d5e6-7890-abcd-ef1234567890"}, "hook_argument": {"type": "string", "description": "Optional hook argument to pass to the duplication process.", "example": "--verbose"}}, "required": ["environment_mapping", "site_name", "site_label"], "additionalProperties": false}, "examples": {"duplicate_basic": {"summary": "Duplicate a site with required fields", "description": "Duplicates a site with a single environment mapping", "value": {"environment_mapping": ["0ebce493-9d09-479d-a9a8-138a206fa687:a1b2c3d4-e5f6-7890-abcd-ef1234567890"], "site_name": "dupsite", "site_label": "Duplicated Site"}}, "duplicate_with_options": {"summary": "Duplicate a site with all options", "description": "Duplicates a site specifying a custom site ID and hook argument", "value": {"environment_mapping": ["0ebce493-9d09-479d-a9a8-138a206fa687:a1b2c3d4-e5f6-7890-abcd-ef1234567890"], "site_name": "duphook", "site_label": "Dup With Hook", "site_id": "f1a2b3c4-d5e6-7890-abcd-ef1234567890", "hook_argument": "my-hook-arg"}}}}}}, "Site_Service_API_CreateSiteRequest": {"description": "Site creation request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The machine name of the site. Must start with a lowercase letter and contain only lowercase letters and numbers.", "minLength": 1, "maxLength": 14, "pattern": "^[a-z][a-z0-9]*$", "example": "mysite"}, "label": {"type": "string", "description": "The human-readable label for the site.", "minLength": 1, "maxLength": 50, "example": "My Site"}, "codebase_id": {"type": "string", "description": "The unique identifier of the codebase to associate with this site.", "pattern": "^[a-zA-Z0-9-]+$", "example": "a9b8c7d6-e5f4-3210-abcd-ef9876543210"}, "site_id": {"type": "string", "format": "uuid", "description": "An optional explicit UUID for the new site. A UUID is generated automatically if omitted.", "example": "0ebce493-9d09-479d-a9a8-138a206fa687"}, "description": {"type": "string", "description": "An optional description for the site.", "maxLength": 512, "example": "A production site for the marketing team."}}, "required": ["name", "label", "codebase_id"], "additionalProperties": false}, "examples": {"create_site_full": {"summary": "Create a new site with all fields", "value": {"name": "mysite", "label": "My Site", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210", "site_id": "0ebce493-9d09-479d-a9a8-138a206fa687", "description": "This is a description of my site."}}, "create_site_minimal": {"summary": "Create a new site with required fields only", "value": {"name": "newsitename", "label": "New Site Label", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210"}}}}}}, "Site_Service_API_UpdateSiteRequest": {"description": "Site update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"label": {"type": "string", "description": "The new human-readable label for the site.", "minLength": 1, "maxLength": 50, "example": "My Updated Site"}, "description": {"type": "string", "description": "The new description for the site.", "maxLength": 512, "example": "Updated description for this site."}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update_label": {"summary": "Update site label", "value": {"label": "My Updated Site"}}, "update_description": {"summary": "Update site description", "value": {"description": "Updated description for this site."}}, "update_both": {"summary": "Update label and description", "value": {"label": "My Updated Site", "description": "Updated description for this site."}}}}}}, "CDN_API_ProvisionCdnForDomainRequest": {"description": "Domain CDN provisioning request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"environment_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "The environment identifier that the domain will be associated with for purging purposes."}}, "additionalProperties": false, "required": ["environment_id"], "minProperties": 1}, "example": {"environment_id": "0c3f0f5f-5727-4838-9459-2d90ee1cf7c1"}}}}, "CDN_API_CreatePurgeRequest": {"description": "Purge request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"resource_type": {"type": "string", "description": "The type of resource to purge.", "enum": ["tags", "urls", "domains", "everything"]}, "values": {"type": "array", "description": "List of values to purge based on the resource type.\nRequired when `resource_type` is not `everything`.\n", "items": {"type": "string"}, "minItems": 1}}, "additionalProperties": false, "required": ["resource_type"], "minProperties": 1}, "examples": {"purge_urls": {"summary": "Purge specific URLs", "value": {"resource_type": "urls", "values": ["https://example.com/page1", "https://example.com/page2"]}}, "purge_tags": {"summary": "Purge by cache tags", "value": {"resource_type": "tags", "values": ["product-123", "category-456"]}}, "purge_domains": {"summary": "Purge entire domains", "value": {"resource_type": "domains", "values": ["example.com", "test.example.org"]}}, "purge_everything": {"summary": "Purge everything", "value": {"resource_type": "everything"}}}}}}, "CDN_API_UpdateSecurityRuleSetRequest": {"description": "Security ruleset update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"is_enabled": {"type": "boolean", "description": "Indicates whether the security ruleset should be enabled."}}, "additionalProperties": false, "required": ["is_enabled"], "minProperties": 1}, "examples": {"enable": {"summary": "Enables a security ruleset", "value": {"is_enabled": true}}}}}}, "CDN_API_CreateIpRuleRequest": {"description": "IP rule create request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"ips": {"type": "array", "description": "The IPs or CIDR blocks to include in the rule.", "items": {"type": "string", "description": "An IP address or CIDR block."}}, "action": {"type": "string", "enum": ["block", "allow"], "description": "The action applied when the rule matches."}, "display_name": {"type": "string", "description": "The display name of the IP rule."}, "description": {"type": "string", "description": "The description of the IP rule."}}, "additionalProperties": false, "required": ["ips", "action", "display_name"]}, "examples": {"create": {"summary": "Creates an IP rule", "value": {"ips": ["192.0.2.10", "198.51.100.0/24"], "action": "block", "display_name": "Block office IPs", "description": "Blocks office IP ranges."}}}}}}, "CDN_API_UpdateIpRuleRequest": {"description": "IP rule update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the IP rule."}, "action": {"type": "string", "enum": ["block", "allow"], "description": "The action applied when the rule matches."}, "description": {"type": "string", "description": "The description of the IP rule."}, "ips": {"type": "array", "description": "The IPs or CIDR blocks associated with the rule.", "items": {"type": "string", "description": "An IP address or CIDR block."}}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update": {"summary": "Updates an IP rule", "value": {"display_name": "Allow support", "action": "allow", "ips": ["203.0.113.5"]}}}}}}, "CDN_API_CreateCustomRuleRequest": {"description": "Custom security rule create request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the custom security rule."}, "action": {"type": "string", "enum": ["block", "allow", "alert"], "description": "The action applied when the rule matches."}, "priority": {"type": "integer", "minimum": 1, "description": "The priority order for the rule."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "paths": {"type": "array", "description": "The paths the rule applies to.", "items": {"type": "string", "description": "A path pattern."}}}, "additionalProperties": false, "required": ["display_name", "action", "domains", "paths"], "minProperties": 1}, "examples": {"create": {"summary": "Creates a custom security rule", "value": {"display_name": "Block bad bots", "action": "block", "priority": 1, "domains": ["example.com"], "paths": ["/api/*"]}}}}}}, "CDN_API_CreateRateLimitingRuleRequest": {"description": "Rate limiting rule create request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the rate limiting rule."}, "action": {"type": "string", "enum": ["block", "alert"], "description": "The action applied when the rule matches."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "rate_limit_per_minute": {"type": "string", "enum": ["lenient", "moderate", "strict"], "description": "The rate limit category applied to the rule."}}, "additionalProperties": false, "required": ["display_name", "action", "rate_limit_per_minute"], "minProperties": 1}, "examples": {"create": {"summary": "Creates a rate limiting rule", "value": {"display_name": "Rate Rule 1", "action": "alert", "rate_limit_per_minute": "lenient", "domains": ["example.com"]}}}}}}, "CDN_API_UpdateRateLimitingRuleRequest": {"description": "Rate limiting rule update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the rate limiting rule."}, "action": {"type": "string", "enum": ["block", "alert"], "description": "The action applied when the rule matches."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "rate_limit_per_minute": {"type": "string", "enum": ["lenient", "moderate", "strict"], "description": "The rate limit category applied to the rule."}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update": {"summary": "Updates a rate limiting rule", "value": {"display_name": "Rate Rule 2", "action": "block", "rate_limit_per_minute": "strict", "domains": ["shop.example.com"]}}}}}}, "CDN_API_UpdateCustomRuleRequest": {"description": "Custom security rule update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the custom security rule."}, "action": {"type": "string", "enum": ["block", "allow", "alert"], "description": "The action applied when the rule matches."}, "priority": {"type": "integer", "minimum": 1, "description": "The priority order for the rule."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "paths": {"type": "array", "description": "The paths the rule applies to.", "items": {"type": "string", "description": "A path pattern."}}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update": {"summary": "Updates a custom security rule", "value": {"display_name": "Alert login scans", "action": "alert", "priority": 2, "domains": ["shop.example.com"], "paths": ["/login"]}}}}}}, "SSH_Key_Service_API_SshKeyRequestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "required": ["label", "public_key"], "description": "Describes the request body for an SSH key.", "properties": {"label": {"type": "string", "description": "The SSH key label."}, "public_key": {"type": "string", "description": "The public key."}}, "additionalProperties": false, "minProperties": 1}, "example": {"label": "mykey", "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQChwPHzTTDKDpSbpa2+d22LcbQmsw92eLsUK3Fmei1fiGDkd34NsYCN8m7lsi3NbvdMS83CtPQPWiCveYPzFs1/hHc4PYj8opD2CNnr5iWVVbyaulCYHCgVv4aB/ojcexg8q483A4xJeF15TiCr/gu34rK6ucTvC/tn/rCwJBudczvEwt0klqYwv8Cl/ytaQboSuem5KgSjO3lMrb6CWtfSNhE43ZOw+UBFBqxIninN868vGMkIv9VY34Pwj54rPn/ItQd6Ef4B0KHHaGmzK0vfP+AK7FxNMoHnj3iYT33KZNqtDozdn5tYyH/bThPebEtgqUn+/w5l6wZIC/8zzvls/127ngHk+jNa0PlNyS2TxhPUK4NaPHIEnnrlp07JEYC4ImcBjaYCWAdcTcUkcJjwZQkN4bGmyO9cjICH98SdLD/HxqzTHeaYDbAX/Hu9HfaBb5dXLWsjw3Xc6hoVnUUZbMQyfgb0KgxDLh92eNGxJkpZiL0VDNOWCxDWsNpzwhLNkLqCvI6lyxiLaUzvJAk6dPaRhExmCbU1lDO2eR0FdSwC1TEhJOT9eDIK1r2hztZKs2oa5FNFfB/IFHVWasVFC9N2h/r/egB5zsRxC9MqBLRBq95NBxaRSFng6ML5WZSw41Qi4C/JWVm89rdj2WqScDHYyAdwyyppWU4T5c9Fmw== example@example.com"}}}}, "Failover_Service_API_CreateFailoverGroupRequest": {"description": "Create failover group request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the failover group.", "example": "Primary Failover Group"}}, "required": ["name"], "additionalProperties": false}, "examples": {"create": {"summary": "Creates a new failover group", "description": "Creates a new failover group with the specified name", "value": {"name": "Primary Failover Group"}}}}}}, "Failover_Service_API_SaveMultiRegionFailoverRequest": {"description": "Multi-region failover enable request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"region": {"type": "string", "description": "The region to enable multi-region failover for.", "example": "us-east-1"}}, "required": ["region"], "additionalProperties": false, "minProperties": 1}, "examples": {"enable": {"summary": "Enables multi-region failover for a region", "description": "Enables multi-region failover for the specified region", "value": {"region": "us-east-1"}}}}}}, "Tag_API_SaveTagRequest": {"description": "Tag create/update request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"color": {"type": "string", "pattern": "^#((?:[a-f0-9]{3}){1,2})$", "description": "A color for the specified tag"}}, "additionalProperties": false, "minProperties": 1}, "examples": {"save": {"summary": "Saves a tag", "description": "Saves a tag with specified color", "value": {"color": "#000000"}}}}}}, "Environment_Service_API_StartDeploymentRequest": {"description": "Deployment start request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"run_hooks": {"type": "boolean", "description": "Whether to run deployment hooks."}, "code_reference": {"type": "string", "description": "The code reference (branch or tag) to deploy."}, "hooks_argument": {"type": "string", "description": "Additional arguments passed to deployment hooks."}}, "required": ["run_hooks", "code_reference"], "additionalProperties": false, "minProperties": 1}, "examples": {"start_deployment": {"summary": "Start a deployment", "description": "Starts a deployment for the specified environment.", "value": {"run_hooks": true, "code_reference": "release-2025-01-15", "hooks_argument": "--migrate --clear-cache"}}}}}}, "Environment_Service_API_UpdateCodeDeployRequest": {"description": "Code deploy concurrency update request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"concurrency": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Maximum number of concurrent code deploys allowed for the environment."}}, "required": ["concurrency"], "additionalProperties": false, "minProperties": 1}, "examples": {"update_concurrency": {"summary": "Update code deploy concurrency", "description": "Sets the maximum concurrent code deploys for the environment.", "value": {"concurrency": 10}}}}}}, "Environment_Service_API_ReorderSiteInstancesRequest": {"description": "Site instances reorder request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"site_instance_ids": {"type": "array", "description": "List of site instance IDs in the desired priority order.", "items": {"type": "string", "description": "Site instance identifier in the format {siteId}.{environmentId} (dot-separated site and environment UUIDs)."}}}, "required": ["site_instance_ids"], "additionalProperties": false, "minProperties": 1}, "examples": {"reorder": {"summary": "Reorder site instances", "description": "Provides the desired order of site instance IDs for the environment.", "value": {"site_instance_ids": ["3e8ecbec-ea7c-4260-8414-ef2938c859bc.a0c9dff7-56b6-4c0d-bad0-0e6593f66cd3", "b1d8e2f8-67c7-5d1e-cbe1-1f7604f77de4.c2e9f3a9-78d8-6e2f-dcf2-2a8715a88ef5", "d3fa04ba-89e9-4f3a-edf3-3b9826b99fa6.e4ab15cb-90fa-4a4b-fea4-4c0937c00ab7"]}}}}}}, "Environment_Service_API_UpdateEnvironmentRequest": {"description": "Update environment request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"label": {"type": "string", "minLength": 1, "maxLength": 128, "description": "Human-readable label for the environment."}, "description": {"type": "string", "minLength": 1, "maxLength": 512, "description": "Description for the environment."}, "properties": {"type": "object", "description": "PHP and server configuration properties for the environment.", "properties": {"version": {"type": "string", "description": "PHP version (e.g. \"8.3\")."}, "apcu": {"type": "integer", "description": "APCu memory limit in MB."}, "max_execution_time": {"type": "integer", "description": "PHP max execution time in seconds."}, "memory_limit": {"type": "integer", "description": "PHP memory limit in MB."}, "opcache": {"type": "integer", "description": "OPcache memory limit in MB."}, "interned_strings_buffer": {"type": "integer", "description": "OPcache interned strings buffer in MB."}, "client_max_body_size": {"type": "integer", "description": "Nginx client_max_body_size in MB."}, "upload_max_filesize": {"type": "integer", "description": "PHP upload_max_filesize in MB."}, "max_post_size": {"type": "integer", "description": "PHP post_max_size in MB."}, "max_input_vars": {"type": "integer", "description": "PHP max_input_vars."}, "memcached_limit": {"type": "integer", "description": "Memcached memory limit in MB."}, "operating_system": {"type": "string", "description": "Operating system (e.g. \"focal\")."}, "sendmail_path": {"type": "string", "description": "Sendmail path configuration."}}}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update_label": {"summary": "Update environment label", "value": {"label": "Staging", "description": "Staging environment"}}, "update_properties": {"summary": "Update PHP properties", "value": {"properties": {"version": "8.3", "memory_limit": 256}}}}}}}, "Environment_Service_API_ClearCachesRequest": {"description": "Clear caches request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"domains": {"type": "array", "description": "List of domain names to clear caches for.", "minItems": 1, "items": {"type": "string", "description": "A domain name."}}}, "required": ["domains"], "additionalProperties": false}, "examples": {"clear_caches": {"summary": "Clear caches for specific domains", "value": {"domains": ["example.com", "www.example.com"]}}}}}}, "Environment_Service_API_CreateSiteInstanceRequest": {"description": "Create site instance request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"site_id": {"type": "string", "description": "The UUID of the site to associate with this environment."}, "source_environment_id": {"type": "string", "description": "The UUID of the environment to copy files and database from during creation."}, "source_site_id": {"type": "string", "description": "The UUID of the source site to copy files from during creation."}, "hook_arguments": {"type": "string", "description": "Additional arguments to pass to deployment hooks during creation."}}, "required": ["site_id"], "additionalProperties": false}, "examples": {"create": {"summary": "Associate a site with an environment", "value": {"site_id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}}}}}, "Environment_Service_API_CopySiteInstanceFilesRequest": {"description": "Copy site instance files request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"source_environment_id": {"type": "string", "description": "The UUID of the environment to copy files from."}}, "required": ["source_environment_id"], "additionalProperties": false}, "examples": {"copy_files": {"summary": "Copy files from another environment", "value": {"source_environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323"}}}}}}, "Environment_Service_API_CopySiteInstanceDatabaseRequest": {"description": "Copy site instance database request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"source_environment_id": {"type": "string", "description": "The UUID of the environment to copy the database from."}}, "required": ["source_environment_id"], "additionalProperties": false}, "examples": {"copy_database": {"summary": "Copy database from another environment", "value": {"source_environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323"}}}}}}, "Environment_Service_API_AssociatePrivateNetworkRequest": {"description": "Associate private network request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"private_network_id": {"type": "string", "description": "The identifier of the private network to associate with this environment."}}, "required": ["private_network_id"], "additionalProperties": false, "minProperties": 1}, "examples": {"associate": {"summary": "Associate a private network", "value": {"private_network_id": "pn-a1b2c3d4-e5f6-7890-abcd-ef1234567890"}}}}}}, "Environment_Service_API_UpdateTrustedProxiesRequest": {"description": "Update trusted proxies request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"cidrs_ipv4": {"type": "array", "description": "List of trusted IPv4 CIDR blocks.", "items": {"type": "string", "description": "An IPv4 CIDR block (e.g. \"203.0.113.0/24\")."}}, "cidrs_ipv6": {"type": "array", "description": "List of trusted IPv6 CIDR blocks.", "items": {"type": "string", "description": "An IPv6 CIDR block (e.g. \"2001:db8::/32\")."}}, "associated_cdns": {"type": "array", "description": "List of CDN names to associate with this environment.", "items": {"type": "string", "enum": ["akamai", "cloudflare", "fastly"]}}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update": {"summary": "Update trusted proxy configuration", "value": {"cidrs_ipv4": ["203.0.113.0/24"], "cidrs_ipv6": [], "associated_cdns": ["cloudflare"]}}}}}}, "Environment_Service_API_CreateDomainPatternRequest": {"description": "Create domain pattern request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The domain pattern to apply to all associated sites in this environment, optionally followed by a single path segment. The [site-name] token is mandatory; [environment-name] is optional. Domain \u2264 200 chars excluding token placeholders; optional path max 255 chars matching ^/[A-Za-z0-9._-]+$. Additional semantic rules (no IPs, no forbidden suffixes, no wildcards, one pattern per environment) are enforced at the service layer.\n", "example": "[site-name].acme.com"}}, "required": ["pattern"], "additionalProperties": false}, "examples": {"create_domain_pattern": {"summary": "Create a domain pattern", "value": {"pattern": "[site-name].acme.com"}}}}}}, "Environment_Service_API_UpdateDomainPatternRequest": {"description": "Update domain pattern request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The updated domain pattern to apply to all associated sites in this environment, optionally followed by a single path segment. The [site-name] token is mandatory. Domain \u2264 200 chars excluding token placeholders; optional path max 255 chars matching ^/[A-Za-z0-9._-]+$. Additional semantic rules (no IPs, no forbidden suffixes, no wildcards, one pattern per environment) are enforced at the service layer.\n"}}, "required": ["pattern"], "additionalProperties": false, "minProperties": 1}, "examples": {"update_domain_pattern": {"summary": "Update a domain pattern", "value": {"pattern": "[site-name].staging.acme.com"}}}}}}, "Federated_Authentication_API_CreateSsoDomain": {"description": "Request body for creating a new domain.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"domain": {"type": "string", "pattern": "^[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?(\\.[a-zA-Z]{2,})+$", "description": "The domain name to create (e.g., \"acme.com\")."}}, "required": ["domain"], "additionalProperties": false}, "example": {"domain": "acme.com"}}}}, "Federated_Authentication_API_CreateIdentityProvider": {"description": "Request body for creating a new Identity Provider.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"idp_entity_id": {"type": "string", "format": "uri", "description": "The Identity Provider Entity ID."}, "label": {"type": "string", "description": "The name of the Identity Provider."}, "sso_url": {"type": "string", "format": "uri", "description": "The SSO URL for this IdP."}, "certificate": {"type": "string", "description": "The certificate for this IdP."}}, "required": ["label", "idp_entity_id", "sso_url", "certificate"], "additionalProperties": false}, "example": {"label": "Acme Corporation Azure AD", "idp_entity_id": "https://idp.acme.com/saml", "sso_url": "https://acme.com/sso", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----"}}}}, "Federated_Authentication_API_UpdateIdentityProvider": {"description": "Request body for updating an existing Identity Provider.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"label": {"type": "string", "description": "The name of the Identity Provider."}, "certificate": {"type": "string", "description": "The X.509 certificate used for SAML authentication."}, "sso_url": {"type": "string", "format": "uri", "description": "The Single Sign-On URL for the Identity Provider."}, "idp_entity_id": {"type": "string", "format": "uri", "description": "The Identity Provider Entity ID."}}, "additionalProperties": false, "minProperties": 1}, "example": {"label": "Updated Acme Corporation Azure AD", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----", "sso_url": "https://updatedacme.com/sso", "idp_entity_id": "https://idp2.acme.com/saml"}}}}, "Federated_Authentication_API_CreateSsoPolicy": {"$ref": "#/components/requestBodies/Federated_Authentication_API_CreateSsoPolicyRequest"}, "Federated_Authentication_API_UpdateSsoPolicy": {"$ref": "#/components/requestBodies/Federated_Authentication_API_UpdateSsoPolicyRequest"}, "Federated_Authentication_API_UpdateSsoPolicyRequest": {"description": "Request body for updating an SSO policy for an Identity Provider.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"domain_ids": {"type": "array", "description": "List of verified domain IDs to enforce this Identity Provider for.", "items": {"type": "string", "description": "Reference to a verified SSO domain."}}}, "required": ["domain_ids"], "additionalProperties": false, "minProperties": 1}, "example": {"domain_ids": ["dom-456"]}}}}, "Federated_Authentication_API_CreateSsoPolicyRequest": {"description": "Request body for creating an SSO policy for an Identity Provider.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"domain_ids": {"type": "array", "description": "List of verified domain IDs to enforce this Identity Provider for.", "items": {"type": "string", "description": "Reference to a verified SSO domain."}}}, "required": ["domain_ids"], "additionalProperties": false}, "example": {"domain_ids": ["dom-456", "dom-789"]}}}}}, "securitySchemes": {"Codebase_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Site_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "CDN_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "SSH_Key_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Failover_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Tag_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Environment_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Federated_Authentication_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}}}} \ No newline at end of file +{"openapi": "3.1.1", "info": {"title": "Acquia Cloud Platform API", "version": "3.0.0", "description": "The Cloud Platform API includes over 200 endpoints to enhance developer workflow, website management, and provisioning capabilities.", "license": {"name": "Acquia Terms of Service", "url": "https://www.acquia.com/acquia/agreement"}, "contact": {"name": "Acquia", "url": "https://www.acquia.com/contact"}}, "tags": [{"name": "Codebases", "description": "Codebase management", "x-displayName": "Codebases"}, {"name": "Codebase References", "description": "Codebase branch and tag references", "x-displayName": "Codebase References"}, {"name": "Domain Patterns", "description": "Automated domain pattern management", "x-displayName": "Domain Patterns"}, {"name": "Sites", "description": "Site management", "x-displayName": "Sites"}, {"name": "CDNs", "description": "CDN domain management and cache purge operations", "x-displayName": "CDNs"}, {"name": "SSH Keys", "description": "SSH key management for user accounts", "x-displayName": "SSH Keys"}, {"name": "Failover Groups", "description": "Failover group management", "x-displayName": "Failover Groups"}, {"name": "Environments", "description": "Environment configuration and lifecycle", "x-displayName": "Environments"}, {"name": "Tags", "description": "Tag management", "x-displayName": "Tags"}, {"name": "Site Instances", "description": "Site instance management", "x-displayName": "Site Instances"}, {"name": "Deployments", "description": "Deployment management", "x-displayName": "Deployments"}, {"name": "Code Deploys", "description": "Code deploy operations", "x-displayName": "Code Deploys"}, {"name": "Domains", "description": "Domain management", "x-displayName": "Domains"}, {"name": "Site Instance Databases", "description": "Site instance database, connection, and backup management", "x-displayName": "Site Instance Databases"}, {"name": "Identity Providers", "description": "Federated SSO identity provider management", "x-displayName": "Identity Providers"}], "paths": {"/codebases": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of codebases accessible by the user.", "description": "Retrieves a paginated collection of codebases. Use the `filter` parameter to scope results by association.\n\nFilter syntax:\n- By application: `filter=application_id%3D` (e.g. `filter=application_id%3Dabc-123`)\n", "operationId": "getCodebases", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_Offset"}, {"$ref": "#/components/parameters/Codebase_Service_API_Limit"}, {"$ref": "#/components/parameters/Codebase_Service_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_CodebaseCollection"}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a codebase by its ID.", "operationId": "findCodebaseByCodebaseId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:find"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_Codebase"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates a codebase by its ID.", "operationId": "updateCodebaseByCodebaseId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:update"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}], "requestBody": {"$ref": "#/components/requestBodies/Codebase_Service_API_UpdateCodebaseRequest"}, "responses": {"200": {"description": "Codebase updated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Codebase updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}, "message": "Codebase updated."}}}}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a codebase by its ID.", "operationId": "deleteCodebaseByCodebaseId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:delete"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}], "responses": {"200": {"description": "Codebase deleted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Codebase deleted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}, "message": "Codebase deleted."}}}}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/references": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of git references for a codebase.", "operationId": "getReferencesByCodebaseId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list-references"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebase References"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_Offset"}, {"$ref": "#/components/parameters/Codebase_Service_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_CodebaseReferenceCollection"}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/references/{referenceName}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a single git reference for a codebase.", "operationId": "findReferenceByCodebaseIdAndReferenceName", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:find-reference"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebase References"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_ReferenceName"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_CodebaseReference"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/domain-patterns": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of domain patterns for the specified codebase.", "operationId": "getDomainPatternsByCodebaseId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list-domain-patterns"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_Offset"}, {"$ref": "#/components/parameters/Codebase_Service_API_Limit"}, {"$ref": "#/components/parameters/Codebase_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_DomainPatternCollection"}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a domain pattern for the specified codebase.", "operationId": "createDomainPatternByCodebaseId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:create-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}], "requestBody": {"$ref": "#/components/requestBodies/Codebase_Service_API_CreateDomainPatternRequest"}, "responses": {"202": {"description": "Domain pattern creation initiated.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern is being applied to all associated sites in this codebase.", "description": "Confirmation message that the domain pattern is being applied."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}, "message": "The domain pattern is being applied to all associated sites in this codebase."}}}}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/domain-patterns/{patternId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a domain pattern by codebase ID and pattern ID.", "operationId": "findDomainPatternByCodebaseIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:find-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_PatternId"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_DomainPattern"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates a domain pattern for the specified codebase.", "operationId": "updateDomainPatternByCodebaseIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:update-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_PatternId"}], "requestBody": {"$ref": "#/components/requestBodies/Codebase_Service_API_UpdateDomainPatternRequest"}, "responses": {"202": {"description": "Domain pattern update initiated.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern update is being applied to all associated sites in this codebase.", "description": "Confirmation message that the domain pattern update is being applied."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}, "message": "The domain pattern update is being applied to all associated sites in this codebase."}}}}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a domain pattern for the specified codebase. Engineering role only.", "operationId": "deleteDomainPatternByCodebaseIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:delete-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Codebase_Service_API_PatternId"}], "responses": {"202": {"description": "Domain pattern deletion initiated. The 202 covers two async operations: (1) removal of the pattern record and (2) a bulk cleanup that disassociates any URLs already generated from this pattern on all associated site instances in the codebase. Both operations complete before the final settled state is observable.\n", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern is being removed from all associated sites in this codebase.", "description": "Confirmation message that the domain pattern is being removed."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}, "message": "The domain pattern is being removed from all associated sites in this codebase."}}}}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionId}/codebases": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of codebases for a subscription.", "operationId": "getCodebasesBySubscriptionId", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-codebases"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_SubscriptionId"}, {"$ref": "#/components/parameters/Codebase_Service_API_Offset"}, {"$ref": "#/components/parameters/Codebase_Service_API_Limit"}, {"$ref": "#/components/parameters/Codebase_Service_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Codebase_Service_API_SubscriptionCodebaseCollection"}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a new codebase for a subscription.", "operationId": "createCodebase", "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-codebase"}, "mcp": {"enabled": false}, "ops": {"enabled": false}}}, "x-acquia-operation": {"provider": {"service": "codebase-service"}}, "tags": ["Codebases"], "parameters": [{"$ref": "#/components/parameters/Codebase_Service_API_SubscriptionId"}], "requestBody": {"$ref": "#/components/requestBodies/Codebase_Service_API_CreateCodebaseRequest"}, "responses": {"200": {"description": "Codebase created", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Codebase created.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}, "message": "Codebase created."}}}}, "400": {"$ref": "#/components/responses/Codebase_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Codebase_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Codebase_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Codebase_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Codebase_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Codebase_Service_API_InternalServerError"}}, "security": [{"Codebase_Service_API_BearerAuth": []}]}}, "/sites": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of sites accessible by the user.", "operationId": "getSites", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:list"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_Offset"}, {"$ref": "#/components/parameters/Site_Service_API_Limit"}, {"$ref": "#/components/parameters/Site_Service_API_Filter"}, {"$ref": "#/components/parameters/Site_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_SiteCollection"}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a site for a codebase.", "operationId": "createSite", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:create"}}}, "tags": ["Sites"], "requestBody": {"$ref": "#/components/requestBodies/Site_Service_API_CreateSiteRequest"}, "responses": {"200": {"description": "Site created", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site creation started.", "description": "Confirmation message indicating site creation has been initiated"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/f1a2b3c4-d5e6-7890-abcd-ef1234567890"}, "parent": {"href": "https://api.acquia.com/v3/sites"}}, "message": "Site creation started."}}}}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/sites/{siteId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a site by its ID.", "operationId": "findSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:find"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_Site"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates a site by its ID.", "operationId": "updateSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:update"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "requestBody": {"$ref": "#/components/requestBodies/Site_Service_API_UpdateSiteRequest"}, "responses": {"200": {"description": "Site update accepted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site update started.", "description": "Confirmation message indicating site update has been initiated"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/12345678-1234-1234-1234-123456789012"}}, "message": "Site update started."}}}}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a site by its ID.", "operationId": "deleteSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:delete"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "responses": {"202": {"description": "Site deletion accepted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site deleted.", "description": "Confirmation message indicating the site has been deleted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/550e8400-e29b-41d4-a716-446655440002"}}, "message": "Site deleted."}}}}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/sites/{siteId}/actions/duplicate": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Duplicates a site from another given site.", "operationId": "duplicateSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:duplicate"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "requestBody": {"$ref": "#/components/requestBodies/Site_Service_API_DuplicateSiteRequest"}, "responses": {"202": {"description": "Site duplication started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site duplication started.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/f1a2b3c4-d5e6-7890-abcd-ef1234567890"}, "parent": {"href": "https://api.acquia.com/v3/sites"}}, "message": "Site duplication started."}}}}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/sites/{siteId}/actions/recover": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Recovers a site that is scheduled for deletion", "operationId": "recoverSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:recover"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "responses": {"202": {"description": "Site recovery started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site recovery started.", "description": "Confirmation message indicating the site recovery has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/11111111-1111-1111-1111-111111111111"}, "parent": {"href": "https://api.acquia.com/v3/sites"}}, "message": "Site recovery started."}}}}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/sites/{siteId}/actions/schedule-delete": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Schedules a site for deletion", "operationId": "scheduleDeleteSiteBySiteId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:schedule-delete"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SiteId"}], "responses": {"202": {"description": "Site deletion scheduled", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site deletion scheduled.", "description": "Confirmation message indicating the site deletion has been scheduled."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/550e8400-e29b-41d4-a716-446655440002"}, "parent": {"href": "https://api.acquia.com/v3/sites"}}, "message": "Site deletion scheduled."}}}}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Site_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/sites": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of sites associated with a codebase.", "operationId": "getSitesByCodebaseId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list-sites"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Site_Service_API_Offset"}, {"$ref": "#/components/parameters/Site_Service_API_Limit"}, {"$ref": "#/components/parameters/Site_Service_API_Filter"}, {"$ref": "#/components/parameters/Site_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_SiteCollection"}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionId}/sites": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of sites associated with a subscription.", "operationId": "getSitesBySubscriptionId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-sites"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_SubscriptionId"}, {"$ref": "#/components/parameters/Site_Service_API_Offset"}, {"$ref": "#/components/parameters/Site_Service_API_Limit"}, {"$ref": "#/components/parameters/Site_Service_API_Filter"}, {"$ref": "#/components/parameters/Site_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_SiteCollection"}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/sites": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a list of sites associated with an environment.", "operationId": "getSitesByEnvironmentId", "x-acquia-operation": {"provider": {"service": "site-service-php"}}, "x-acquia-exposure": {"stability": "production", "audience": ["public"], "channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:list-sites"}}}, "tags": ["Sites"], "parameters": [{"$ref": "#/components/parameters/Site_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Site_Service_API_Offset"}, {"$ref": "#/components/parameters/Site_Service_API_Limit"}, {"$ref": "#/components/parameters/Site_Service_API_Filter"}, {"$ref": "#/components/parameters/Site_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Site_Service_API_SiteCollection"}, "400": {"$ref": "#/components/responses/Site_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Site_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Site_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Site_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Site_Service_API_InternalServerError"}}, "security": [{"Site_Service_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/domains": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getDomainsBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-domains"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of CDN domains for a subscription", "description": "Retrieves a paginated list of CDN domains for the specified subscription.\n\n**Filtering:**\n - Format: `field=value` or `fieldvalue`\n - AND logic: semicolon (`;`) \u2014 `status=active;application_name=my-app`\n - OR logic: comma (`,`) \u2014 `status=active,status=pending`\n\n**Sorting:**\n- Format: Comma-delimited fields. Prefix with `-` for descending.\n- Example: `domain,-created_at`\n", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}, {"$ref": "#/components/parameters/CDN_API_Filter"}, {"$ref": "#/components/parameters/CDN_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_DomainCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/domains/{domainName}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a domain by domain name.", "description": "Retrieves the full details of a CDN domain within a subscription, identified by its fully qualified domain name.", "operationId": "findDomainBySubscriptionUuidAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_DomainName"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_Domain"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/domains/{domainName}/actions/provision": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "provisionDomainBySubscriptionUuidAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:provision-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Provisions a domain for CDN services", "description": "Provisions a domain for CDN services within a subscription by associating it with an environment.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_DomainName"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_ProvisionCdnForDomainRequest"}, "responses": {"202": {"$ref": "#/components/responses/CDN_API_DomainCdnProvisioningAccepted"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/domains/{domainName}/actions/deprovision": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "deprovisionDomainBySubscriptionUuidAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:deprovision-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Deprovisions a domain from CDN services", "description": "Deprovisions a domain for CDN services within a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_DomainName"}], "responses": {"202": {"$ref": "#/components/responses/CDN_API_DomainCdnDeprovisioningAccepted"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/environments/{environmentId}/actions/purge-cdn": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "purgeCdnByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:purge-cdn"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Creates a CDN cache purge request", "description": "Creates a request to purge cached content from the CDN for the specified environment.\n\n**Resource Types** (specified in the request body):\n- `urls` - Purge specific URLs\n- `tags` - Purge by cache tags\n- `domains` - Purge entire domains\n- `everything` - Purge all content in the environment\n", "parameters": [{"$ref": "#/components/parameters/CDN_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_CreatePurgeRequest"}, "responses": {"202": {"$ref": "#/components/responses/CDN_API_PurgeAccepted"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/rulesets": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getSecurityRuleSetsBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-security-rule-sets"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of security rulesets.", "description": "Retrieves security rulesets for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_SecurityRuleSetCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/rulesets/{ruleSetId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "findSecurityRuleSetBySubscriptionUuidAndRuleSetId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-security-rule-set"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a security ruleset.", "description": "Retrieves a security ruleset for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RuleSetId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_SecurityRuleSet"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "put": {"operationId": "updateSecurityRuleSetBySubscriptionUuidAndRuleSetId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:update-security-rule-set"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Updates a security rulesets.", "description": "Updates a security rulesets for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RuleSetId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_UpdateSecurityRuleSetRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_SecurityRuleSetUpdated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/ip-rules": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getIpRulesBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-ip-rules"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of IP rules.", "description": "Retrieves IP rules for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Filter"}, {"$ref": "#/components/parameters/CDN_API_Sort"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRuleCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "post": {"operationId": "createIpRuleBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-ip-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Creates an IP rule.", "description": "Creates an IP rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_CreateIpRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRuleCreated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/ip-rules/{ipRuleId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "findIpRuleBySubscriptionUuidAndIpRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-ip-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves an IP rule.", "description": "Retrieves an IP rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_IpRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRule"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "put": {"operationId": "updateIpRuleBySubscriptionUuidAndIpRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:update-ip-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Updates an IP rule.", "description": "Updates an IP rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_IpRuleId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_UpdateIpRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRuleUpdated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "delete": {"operationId": "deleteIpRuleBySubscriptionUuidAndIpRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:delete-ip-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Deletes an IP rule.", "description": "Deletes an IP rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_IpRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_IpRuleDeleted"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/custom-rules": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getCustomRulesBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-custom-rules"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of custom security rules.", "description": "Retrieves custom security rules for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRuleCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "post": {"operationId": "createCustomRuleBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-custom-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Creates a custom security rule.", "description": "Creates a custom security rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_CreateCustomRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRuleCreated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/custom-rules/{customRuleId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "findCustomRuleBySubscriptionUuidAndCustomRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-custom-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a custom security rule.", "description": "Retrieves a custom security rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_CustomRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRule"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "put": {"operationId": "updateCustomRuleBySubscriptionUuidAndCustomRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:update-custom-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Updates a custom security rule.", "description": "Updates a custom security rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_CustomRuleId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_UpdateCustomRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRuleUpdated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "delete": {"operationId": "deleteCustomRuleBySubscriptionUuidAndCustomRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:delete-custom-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Deletes a custom security rule.", "description": "Deletes a custom security rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_CustomRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_CustomRuleDeleted"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/rate-limiting-rules": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "getRateLimitingRulesBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-rate-limiting-rules"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a collection of rate limiting rules.", "description": "Retrieves rate limiting rules for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_Filter"}, {"$ref": "#/components/parameters/CDN_API_Sort"}, {"$ref": "#/components/parameters/CDN_API_Offset"}, {"$ref": "#/components/parameters/CDN_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRuleCollection"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "post": {"operationId": "createRateLimitingRuleBySubscriptionUuid", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-rate-limiting-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Creates a rate limiting rule.", "description": "Creates a rate limiting rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_CreateRateLimitingRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRuleCreated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionUuid}/config/security/rate-limiting-rules/{rateLimitingRuleId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"operationId": "findRateLimitingRuleBySubscriptionUuidAndRateLimitingRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:find-rate-limiting-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Retrieves a rate limiting rule.", "description": "Retrieves a rate limiting rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RateLimitingRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRule"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "put": {"operationId": "updateRateLimitingRuleBySubscriptionUuidAndRateLimitingRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:update-rate-limiting-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Updates a rate limiting rule.", "description": "Updates a rate limiting rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RateLimitingRuleId"}], "requestBody": {"$ref": "#/components/requestBodies/CDN_API_UpdateRateLimitingRuleRequest"}, "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRuleUpdated"}, "400": {"$ref": "#/components/responses/CDN_API_ValidationError"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}, "delete": {"operationId": "deleteRateLimitingRuleBySubscriptionUuidAndRateLimitingRuleId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:delete-rate-limiting-rule"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "cdn-service"}}, "tags": ["CDNs"], "summary": "Deletes a rate limiting rule.", "description": "Deletes a rate limiting rule for a subscription.", "parameters": [{"$ref": "#/components/parameters/CDN_API_SubscriptionUuid"}, {"$ref": "#/components/parameters/CDN_API_RateLimitingRuleId"}], "responses": {"200": {"$ref": "#/components/responses/CDN_API_RateLimitingRuleDeleted"}, "401": {"$ref": "#/components/responses/CDN_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/CDN_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/CDN_API_NotFoundError"}, "409": {"$ref": "#/components/responses/CDN_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/CDN_API_InternalServerError"}}, "security": [{"CDN_API_BearerAuth": []}]}}, "/ssh-keys": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Gets a list of SSH keys.", "description": "Gets a list of all SSH keys accessible to the requester. Each key includes\na `user_id` field identifying the owner.\n\nTo look up the owner of an SSH key by fingerprint or public key, apply a\nmandatory filter: `GET /ssh-keys?filter=fingerprint%3D` or\n`GET /ssh-keys?filter=public_key%3D`. The matching key(s) will\ninclude the `user_id` of the owner.\n\nFilterable fields:\n* `label`\n* `fingerprint`\n* `public_key`\n* `user_id`\n\nSortable fields:\n* `label`\n", "operationId": "getSshKeys", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "ssh-keys:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "ssh-key-service"}}, "tags": ["SSH Keys"], "parameters": [{"$ref": "#/components/parameters/SSH_Key_Service_API_Offset"}, {"$ref": "#/components/parameters/SSH_Key_Service_API_Limit"}, {"$ref": "#/components/parameters/SSH_Key_Service_API_Filter"}, {"$ref": "#/components/parameters/SSH_Key_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/SSH_Key_Service_API_SshKeyCollection"}, "400": {"$ref": "#/components/responses/SSH_Key_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/SSH_Key_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/SSH_Key_Service_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/SSH_Key_Service_API_InternalServerError"}}, "security": [{"SSH_Key_Service_API_BearerAuth": []}]}, "post": {"summary": "Installs a new SSH key for the current user.", "description": "Installs a new SSH key for the current user.", "operationId": "createSshKey", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "ssh-keys:create"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "ssh-key-service"}}, "tags": ["SSH Keys"], "requestBody": {"$ref": "#/components/requestBodies/SSH_Key_Service_API_SshKeyRequestBody"}, "responses": {"202": {"description": "Accepted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Added SSH key.", "description": "Confirmation message."}}}]}, "example": {"message": "Added SSH key.", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/981b7910-2fe9-11e9-b210-d663bd873d93"}}}}}}, "400": {"$ref": "#/components/responses/SSH_Key_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/SSH_Key_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/SSH_Key_Service_API_ForbiddenError"}, "409": {"$ref": "#/components/responses/SSH_Key_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/SSH_Key_Service_API_InternalServerError"}}, "security": [{"SSH_Key_Service_API_BearerAuth": []}]}}, "/ssh-keys/{sshKeyId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Gets an SSH key.", "description": "Gets an SSH key by SSH Key ID.", "operationId": "findSshKeyBySshKeyId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "ssh-keys:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "ssh-key-service"}}, "tags": ["SSH Keys"], "parameters": [{"$ref": "#/components/parameters/SSH_Key_Service_API_SshKeyId"}], "responses": {"200": {"$ref": "#/components/responses/SSH_Key_Service_API_SshKey"}, "401": {"$ref": "#/components/responses/SSH_Key_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/SSH_Key_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/SSH_Key_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/SSH_Key_Service_API_InternalServerError"}}, "security": [{"SSH_Key_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes an SSH key.", "description": "Deletes an SSH key by SSH Key ID.", "operationId": "deleteSshKeyBySshKeyId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "ssh-keys:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "ssh-key-service"}}, "tags": ["SSH Keys"], "parameters": [{"$ref": "#/components/parameters/SSH_Key_Service_API_SshKeyId"}], "responses": {"202": {"description": "Accepted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Removed SSH key.", "description": "Confirmation message."}}}]}, "example": {"message": "Removed SSH key.", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/1acbb1a5-e864-4b8e-a3f9-b1ed462afd25"}}}}}}, "401": {"$ref": "#/components/responses/SSH_Key_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/SSH_Key_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/SSH_Key_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/SSH_Key_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/SSH_Key_Service_API_InternalServerError"}}, "security": [{"SSH_Key_Service_API_BearerAuth": []}]}}, "/failover-groups": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of failover groups.", "operationId": "getFailoverGroups", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "description": "Retrieves a collection of failover groups. Use the `filter` parameter to scope results by source environment.\n\nFilter syntax:\n- By source environment: `filter=environment_id:`\n", "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_Offset"}, {"$ref": "#/components/parameters/Failover_Service_API_Limit"}, {"$ref": "#/components/parameters/Failover_Service_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroupCollection"}, "400": {"$ref": "#/components/responses/Failover_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a new failover group.", "operationId": "createFailoverGroup", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:create"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "requestBody": {"$ref": "#/components/requestBodies/Failover_Service_API_CreateFailoverGroupRequest"}, "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_CreateFailoverGroupResponse"}, "400": {"$ref": "#/components/responses/Failover_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/failover-groups/{failoverGroupId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a failover group by ID.", "operationId": "findFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"200": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroup"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a failover group by ID.", "operationId": "deleteFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_DeleteFailoverGroupResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/failover-groups/{failoverGroupId}/actions/failover": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Initiates failover for a failover group.", "operationId": "failoverFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroupFailoverResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/failover-groups/{failoverGroupId}/actions/revert-failover": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Initiates a revert failover for a failover group.", "operationId": "revertFailoverFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:revert-failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroupRevertFailoverResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/failover-groups/{failoverGroupId}/actions/sync": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Initiates a sync for a failover group.", "operationId": "syncFailoverGroupByFailoverGroupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "failover-groups:sync"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Failover Groups"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_FailoverGroupSyncResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/multi-region-failover": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the multi-region failover status for an environment.", "operationId": "findMultiRegionFailoverByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-multi-region-failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Failover_Service_API_MultiRegionFailoverStatus"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}, "put": {"summary": "Enables multi-region failover for an environment.", "operationId": "saveMultiRegionFailoverByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update-multi-region-failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Failover_Service_API_SaveMultiRegionFailoverRequest"}, "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_SaveMultiRegionFailoverResponse"}, "400": {"$ref": "#/components/responses/Failover_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}, "delete": {"summary": "Disables multi-region failover for an environment.", "operationId": "deleteMultiRegionFailoverByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:delete-multi-region-failover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "failover-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Failover_Service_API_EnvironmentId"}], "responses": {"202": {"$ref": "#/components/responses/Failover_Service_API_DeleteMultiRegionFailoverResponse"}, "401": {"$ref": "#/components/responses/Failover_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Failover_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Failover_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Failover_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Failover_Service_API_InternalServerError"}}, "security": [{"Failover_Service_API_BearerAuth": []}]}}, "/tags": {"servers": [{"url": "https://cloud.acquia.com/api-framework/demo-php/api"}], "get": {"summary": "Retrieves a collection of tags.", "operationId": "getTags", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "tags:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "tag-service"}}, "tags": ["Tags"], "parameters": [{"$ref": "#/components/parameters/Tag_API_Offset"}, {"$ref": "#/components/parameters/Tag_API_Limit"}, {"$ref": "#/components/parameters/Tag_API_Filter"}, {"$ref": "#/components/parameters/Tag_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Tag_API_TagCollection"}, "401": {"$ref": "#/components/responses/Tag_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Tag_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Tag_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Tag_API_InternalServerError"}}, "security": [{"Tag_API_BearerAuth": []}]}}, "/tags/{tagName}": {"servers": [{"url": "https://cloud.acquia.com/api-framework/demo-php/api"}], "get": {"summary": "Retrieves a tag by tag name.", "operationId": "findTagByTagName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "tags:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "tag-service"}}, "tags": ["Tags"], "parameters": [{"$ref": "#/components/parameters/Tag_API_TagName"}], "responses": {"200": {"$ref": "#/components/responses/Tag_API_Tag"}, "401": {"$ref": "#/components/responses/Tag_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Tag_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Tag_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Tag_API_InternalServerError"}}, "security": [{"Tag_API_BearerAuth": []}]}, "put": {"summary": "Creates a tag if tag does not exist else updates the tag by tag name.", "operationId": "saveTagByTagName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "tags:update"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "tag-service"}}, "tags": ["Tags"], "parameters": [{"$ref": "#/components/parameters/Tag_API_TagName"}], "requestBody": {"$ref": "#/components/requestBodies/Tag_API_SaveTagRequest"}, "responses": {"202": {"description": "Create/Updates a tag", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The tag has been saved.", "description": "Confirmation message that the tag is saved"}}}]}, "example": {"_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-3"}}, "message": "The tag has been saved."}}}}, "400": {"$ref": "#/components/responses/Tag_API_ValidationError"}, "401": {"$ref": "#/components/responses/Tag_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Tag_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Tag_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Tag_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Tag_API_InternalServerError"}}, "security": [{"Tag_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a tag by tag name.", "operationId": "deleteTagByTagName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "tags:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "tag-service"}}, "tags": ["Tags"], "parameters": [{"$ref": "#/components/parameters/Tag_API_TagName"}], "responses": {"200": {"description": "Deletes a tag", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The tag has been deleted.", "description": "Confirmation message that the tag is deleted"}}}]}, "example": {"_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-1"}}, "message": "The tag has been deleted."}}}}, "401": {"$ref": "#/components/responses/Tag_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Tag_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Tag_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Tag_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Tag_API_InternalServerError"}}, "security": [{"Tag_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/environments": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of environments for the specified codebase.", "operationId": "getEnvironmentsByCodebaseId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:list-environments"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_FilterableEnvironmentCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/codebases/{codebaseId}/environments/{environmentId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves details for an environment by codebase and environment ID.", "operationId": "findEnvironmentByCodebaseIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "codebases:find-environment"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_CodebaseId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Environment"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/sites/{siteId}/environments": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of environments for the specified site.", "operationId": "getEnvironmentsBySiteId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sites:list-environments"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_EnvironmentCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/private-networks/{privateNetworkId}/environments": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of environments associated with the specified private network.", "operationId": "getEnvironmentsByPrivateNetworkId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "private-networks:list-environments"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_PrivateNetworkId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_EnvironmentCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Get environment details.", "operationId": "findEnvironmentByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Environment"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Modifies properties settings for the specified environment.", "operationId": "updateEnvironmentByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_UpdateEnvironmentRequest"}, "responses": {"202": {"description": "Environment update started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Environment update started.", "description": "Confirmation message that the environment update has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}, "message": "Environment update started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/actions/enable-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Enable Environment Protection mode.", "operationId": "enableEnvironmentProtectionModeByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:enable-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Enable protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Environment protection mode enabled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Environment protection mode enabled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/actions/disable-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Disable Environment Protection mode.", "operationId": "disableEnvironmentProtectionModeByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:disable-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Disable protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Environment protection mode disabled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Environment protection mode disabled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/actions/clear-caches": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Clears caches for the specified environment.", "operationId": "clearEnvironmentCachesByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:clear-caches"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_ClearCachesRequest"}, "responses": {"202": {"description": "Cache clear started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Varnish domain cache clear started.", "description": "Confirmation message that the cache clear has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}, "message": "Varnish domain cache clear started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/eips": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of egress IPs for the specified environment.", "operationId": "getEgressIpsByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:list-egress-ips"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_EgressIpCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/private-network": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the private network associated with the specified environment.", "operationId": "findPrivateNetworkByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-private-network"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_PrivateNetwork"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Associates the specified environment with a private network.", "operationId": "saveEnvironmentPrivateNetworkByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:associate-private-network"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_AssociatePrivateNetworkRequest"}, "responses": {"202": {"description": "Private network association started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Associating private network started.", "description": "Confirmation message that the association has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/private-network"}}, "message": "Associating private network started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Disassociates the specified environment from its private network.", "operationId": "deleteEnvironmentPrivateNetworkByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:disassociate-private-network"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Private network disassociation started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Disassociating environment from private network started.", "description": "Confirmation message that the disassociation has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/private-network"}}, "message": "Disassociating environment from private network started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/trusted-proxies": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the trusted proxy configuration for the specified environment.", "operationId": "findTrustedProxiesByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-trusted-proxies"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_TrustedProxies"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates the trusted proxy configuration for the specified environment.", "operationId": "updateTrustedProxiesByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update-trusted-proxies"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Environments"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_UpdateTrustedProxiesRequest"}, "responses": {"200": {"description": "Trusted proxy configuration updated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Trusted Proxies updated successfully.", "description": "Confirmation message that the configuration has been updated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/trusted-proxies"}}, "message": "Trusted Proxies updated successfully."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/deployments": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of deployments for the specified environment.", "operationId": "getDeploymentsByEnvironmentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:list-deployments"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Filter"}, {"$ref": "#/components/parameters/Environment_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DeploymentCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "post": {"summary": "Starts a deployment for the specified environment.", "operationId": "createDeploymentByEnvironmentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:create-deployment"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_StartDeploymentRequest"}, "responses": {"202": {"description": "Deployment started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Deployment started.", "description": "Confirmation message that the deployment has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}}, "message": "Deployment started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/code-deploy": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the code deploy concurrency setting for the environment.", "operationId": "findCodeDeployByEnvironmentId", "tags": ["Code Deploys"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-code-deploy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_CodeDeploy"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates the code deploy concurrency setting for the environment.", "operationId": "updateCodeDeployByEnvironmentId", "tags": ["Code Deploys"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update-code-deploy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_UpdateCodeDeployRequest"}, "responses": {"200": {"description": "Code deploy concurrency setting updated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Code deploy settings updated successfully.", "description": "Confirmation message that the concurrency setting has been updated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/code-deploy"}}, "message": "Code deploy settings updated successfully."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/site-instances": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Associates a site with the specified environment.", "operationId": "createSiteInstanceByEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:create-site-instance"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_CreateSiteInstanceRequest"}, "responses": {"202": {"description": "Site instance creation started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance creation started.", "description": "Confirmation message that site association has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance creation started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/site-instances/actions/reorder": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Updates the priority order of site instances for the environment.", "operationId": "reorderSiteInstancesByEnvironmentId", "tags": ["Site Instances"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:reorder-site-instances"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_ReorderSiteInstancesRequest"}, "responses": {"200": {"description": "Site instances reordered successfully", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instances reordered successfully.", "description": "Confirmation message that the site instances have been reordered."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/site-instances"}}, "message": "Site instances reordered successfully."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Get site instance details.", "operationId": "findSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_SiteInstance"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Dissociates a site and environment with no grace period.", "operationId": "deleteSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Site instance deletion started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance deletion started.", "description": "Confirmation message that the deletion has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance deletion started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/files": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Copies files from one environment to another for the specified site instance.", "operationId": "copySiteInstanceFilesBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:copy-files"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_CopySiteInstanceFilesRequest"}, "responses": {"202": {"description": "File copy started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "File copy started.", "description": "Confirmation message that the file copy has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "File copy started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/cancel": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Dissociates a site and environment.", "operationId": "cancelSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:cancel"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Site instance cancellation started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance cancellation started.", "description": "Confirmation message that the cancellation has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance cancellation started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/enable-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Enable Site Instance Protection mode.", "operationId": "enableSiteInstanceProtectionModeBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:enable-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Enable protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance protection mode enabled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance protection mode enabled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/disable-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Disable Site Instance Protection mode.", "operationId": "disableSiteInstanceProtectionModeBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:disable-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Disable protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance protection mode disabled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance protection mode disabled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/inherit-protection-mode": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Inherit Site Instance Protection mode.", "operationId": "inheritSiteInstanceProtectionModeBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:inherit-protection-mode"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Inherit protection mode initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance protection mode inherited from environment.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}}, "message": "Site instance protection mode inherited from environment."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/recover": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Recovers a site instance that is scheduled for deletion", "operationId": "recoverSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:recover"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Site instance restoration started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance restoration started.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}, "parent": {"href": "https://api.acquia.com/v3/site-instances"}}, "message": "Site instance restoration started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/actions/schedule-delete": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Schedules a site instance for deletion.", "operationId": "scheduleDeleteSiteInstanceBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:schedule-delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instances"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Site instance deletion scheduled", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Site instance deletion scheduled.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/d3f7270e-c45f-4801-9308-5e8afe84a323.e3f7270e-c45f-4801-9308-5e8afe84a323"}, "parent": {"href": "https://api.acquia.com/v3/site-instances"}}, "message": "Site instance deletion scheduled."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/domains": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of domains for the specified site instance.", "operationId": "getDomainsBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:list-domains"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Filter"}, {"$ref": "#/components/parameters/Environment_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DomainCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/domains/{domainName}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves details for the specified domain on a site instance.", "operationId": "findDomainBySiteIdAndEnvironmentIdAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Domain"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Adds a domain to the specified site instance.", "operationId": "saveDomainBySiteIdAndEnvironmentIdAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:update-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}], "responses": {"202": {"description": "Domain addition started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Domain addition started.", "description": "Confirmation message that the domain addition has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com"}}, "message": "Domain addition started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Removes a domain from the specified site instance.", "operationId": "deleteDomainBySiteIdAndEnvironmentIdAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:delete-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}], "responses": {"202": {"description": "Domain removal started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Domain removal started.", "description": "Confirmation message that the domain removal has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com"}}, "message": "Domain removal started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/domains/{domainName}/status": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the DNS status for the specified domain on a site instance.", "operationId": "findDomainStatusBySiteIdAndEnvironmentIdAndDomainName", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-domain-status"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Domains"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DomainStatus"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves database details for the specified site instance.", "operationId": "findDatabaseBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-database"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Database"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "post": {"summary": "Copies a database from another environment to the specified site instance.", "operationId": "copySiteInstanceDatabaseBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:copy-database"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_CopySiteInstanceDatabaseRequest"}, "responses": {"202": {"description": "Database copy started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Database copy started.", "description": "Confirmation message that the database copy has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database"}}, "message": "Database copy started."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database/connection": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves database connection credentials for the specified site instance.", "operationId": "findDatabaseConnectionBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-database-connection"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DatabaseConnection"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database/backups": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of database backups for the specified site instance.", "operationId": "getDatabaseBackupsBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:list-database-backups"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Filter"}, {"$ref": "#/components/parameters/Environment_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DatabaseBackupCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a database backup for the specified site instance.", "operationId": "createDatabaseBackupBySiteIdAndEnvironmentId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:create-database-backup"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "responses": {"202": {"description": "Database backup creation started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Database backup started.", "description": "Confirmation message that the database backup has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups"}}, "message": "Database backup started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database/backups/{backupId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves details for the specified database backup.", "operationId": "findDatabaseBackupBySiteIdAndEnvironmentIdAndBackupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:find-database-backup"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_BackupId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DatabaseBackup"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes the specified database backup.", "operationId": "deleteDatabaseBackupBySiteIdAndEnvironmentIdAndBackupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:delete-database-backup"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_BackupId"}], "responses": {"202": {"description": "Database backup deletion started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Database backup deletion started.", "description": "Confirmation message that the deletion has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}}, "message": "Database backup deletion started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/site-instances/{siteId}.{environmentId}/database/backups/{backupId}/actions/restore": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Restores the specified database backup to the site instance.", "operationId": "restoreDatabaseBackupBySiteIdAndEnvironmentIdAndBackupId", "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "site-instances:restore-database-backup"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "tags": ["Site Instance Databases"], "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_BackupId"}], "responses": {"202": {"description": "Database backup restore started", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Database restore started.", "description": "Confirmation message that the restore has been started."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}}, "message": "Database restore started."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/deployments/{deploymentId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves the status of a deployment by deployment ID.", "operationId": "findDeploymentByDeploymentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "deployments:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_DeploymentId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_Deployment"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/deployments/{deploymentId}/actions/stop": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Stops a deployment by sending a stop request.", "operationId": "stopDeploymentByDeploymentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "deployments:stop"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_DeploymentId"}], "responses": {"202": {"description": "Deployment stop initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Deployment stop initiated.", "description": "Confirmation message that the deployment stop has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}}, "message": "Deployment stop initiated."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/deployments/{deploymentId}/actions/terminate": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Terminates a deployment immediately.", "operationId": "terminateDeploymentByDeploymentId", "tags": ["Deployments"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "deployments:terminate"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_DeploymentId"}], "responses": {"202": {"description": "Deployment termination is initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Deployment termination initiated.", "description": "Confirmation message that the deployment termination has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}}, "message": "Deployment termination initiated."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/domain-patterns": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a collection of domain patterns for the specified environment.", "operationId": "getDomainPatternsByEnvironmentId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:list-domain-patterns"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_Offset"}, {"$ref": "#/components/parameters/Environment_Service_API_Limit"}, {"$ref": "#/components/parameters/Environment_Service_API_Sort"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DomainPatternCollection"}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "post": {"summary": "Creates a domain pattern for the specified environment.", "operationId": "createDomainPatternByEnvironmentId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:create-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_CreateDomainPatternRequest"}, "responses": {"202": {"description": "Domain pattern creation initiated.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern is being applied to all associated sites in this environment.", "description": "Confirmation message that the domain pattern is being applied."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}, "message": "The domain pattern is being applied to all associated sites in this environment."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/environments/{environmentId}/domain-patterns/{patternId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Retrieves a domain pattern by environment ID and pattern ID.", "operationId": "findDomainPatternByEnvironmentIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:find-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_PatternId"}], "responses": {"200": {"$ref": "#/components/responses/Environment_Service_API_DomainPattern"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "put": {"summary": "Updates a domain pattern for the specified environment.", "operationId": "updateDomainPatternByEnvironmentIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:update-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_PatternId"}], "requestBody": {"$ref": "#/components/requestBodies/Environment_Service_API_UpdateDomainPatternRequest"}, "responses": {"202": {"description": "Domain pattern update initiated.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern update is being applied to all associated sites in this environment.", "description": "Confirmation message that the domain pattern update is being applied."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}, "message": "The domain pattern update is being applied to all associated sites in this environment."}}}}, "400": {"$ref": "#/components/responses/Environment_Service_API_ValidationError"}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}, "delete": {"summary": "Deletes a domain pattern for the specified environment. Engineering role only.", "operationId": "deleteDomainPatternByEnvironmentIdAndPatternId", "tags": ["Domain Patterns"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "environments:delete-domain-pattern"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "environment-service"}}, "parameters": [{"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, {"$ref": "#/components/parameters/Environment_Service_API_PatternId"}], "responses": {"202": {"description": "Domain pattern deletion initiated. The 202 covers two async operations: (1) removal of the pattern record and (2) a bulk cleanup that disassociates any URLs already generated from this pattern on all associated site instances in the environment. Both operations complete before the final settled state is observable.\n", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain pattern is being removed from all associated sites in this environment.", "description": "Confirmation message that the domain pattern is being removed."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}, "message": "The domain pattern is being removed from all associated sites in this environment."}}}}, "401": {"$ref": "#/components/responses/Environment_Service_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Environment_Service_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Environment_Service_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Environment_Service_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Environment_Service_API_InternalServerError"}}, "security": [{"Environment_Service_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionId}/sso-domains": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "createSsoDomainBySubscriptionId", "summary": "Create a new domain for federated SSO.", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-sso-domain"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SubscriptionId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_CreateSsoDomain"}, "responses": {"202": {"description": "Domain creation accepted. The domain is being added to your subscription. To complete verification, add the provided DNS TXT record and call the verify action.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Domain creation has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}}, "message": "Domain creation has been accepted."}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "get": {"summary": "Return a list of domains for a subscription.", "operationId": "getSsoDomainsBySubscriptionId", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-sso-domains"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SubscriptionId"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Offset"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Limit"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Sort"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_SsoDomainCollection"}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/subscriptions/{subscriptionId}/identity-providers": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"operationId": "createIdentityProviderBySubscriptionId", "summary": "Create a new Identity Provider.", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:create-identity-provider"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SubscriptionId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_CreateIdentityProvider"}, "responses": {"202": {"description": "Identity Provider creation initiated. The Identity Provider is being provisioned. Poll the Identity Provider resource to check when it becomes active.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Identity Provider creation has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f"}}, "message": "Identity Provider creation has been accepted."}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "get": {"summary": "Return a list of Identity Providers for a subscription.", "operationId": "getIdentityProvidersBySubscriptionId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "subscriptions:list-identity-providers"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SubscriptionId"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Offset"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Limit"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Sort"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_IdentityProviderCollection"}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/sso-domains": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Return a list of all accessible domains.", "operationId": "getSsoDomains", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sso-domains:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_Offset"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Limit"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Sort"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_SsoDomainCollection"}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/sso-domains/{domainId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Return details about a specific domain.", "operationId": "findSsoDomainBySsoDomainId", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sso-domains:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SsoDomainId"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_SsoDomain"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "delete": {"summary": "Delete a domain.", "operationId": "deleteSsoDomainBySsoDomainId", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sso-domains:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SsoDomainId"}], "responses": {"202": {"description": "Domain deletion accepted. The domain is being deleted.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Domain deletion has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}}, "message": "Domain deletion has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/sso-domains/{domainId}/actions/verify": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Verify domain ownership via DNS TXT record.", "operationId": "verifySsoDomainBySsoDomainId", "tags": ["Domains"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "sso-domains:verify"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_SsoDomainId"}], "responses": {"202": {"description": "Domain verification process initiated. The system will validate the DNS TXT record to confirm domain ownership. Poll the domain resource and check `health.code` to track progress: `202` in progress, `200` verified, `404` record not found.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Domain verification has been accepted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}}, "message": "Domain verification has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Return a list of all accessible Identity Providers.", "operationId": "getIdentityProviders", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:list"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_Offset"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Limit"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Sort"}, {"$ref": "#/components/parameters/Federated_Authentication_API_Filter"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_IdentityProviderCollection"}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers/{identityProviderId}": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Return details about a specific Identity Provider.", "operationId": "findIdentityProviderByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:find"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"200": {"$ref": "#/components/responses/Federated_Authentication_API_IdentityProvider"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "put": {"summary": "Updates an Identity Provider.", "operationId": "updateIdentityProviderByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:update"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_UpdateIdentityProvider"}, "responses": {"202": {"description": "Identity Provider update initiated. The Identity Provider configuration changes are being applied. Poll the Identity Provider resource to verify the changes.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Identity Provider update has been accepted."}}}]}, "example": {"message": "Identity Provider update has been accepted.", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f"}}}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "delete": {"summary": "Deletes an Identity Provider.", "operationId": "deleteIdentityProviderByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:delete"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"202": {"description": "Identity Provider deletion accepted. The Identity Provider is being deleted.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "Identity Provider deletion has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f"}}, "message": "Identity Provider deletion has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers/{identityProviderId}/policies/sso": {"servers": [{"url": "https://api.acquia.com/v3"}], "get": {"summary": "Get the SSO policy for an Identity Provider.", "operationId": "findIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:find-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"200": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_SsoPolicy"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}, "example": {"status": "disabled", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "_embedded": {"domains": [{"domain_id": "dom-456", "domain": "acme.com", "subscription_id": "sub-123", "health": {"code": "200", "summary": "Verified", "details": "The DNS TXT record has been confirmed and the domain is verified."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.com", "value": "abc123def456", "health": {"code": "200", "summary": "Verified", "details": "The TXT record at _acquia-challenge.acme.com matches the expected value."}}, "verified_at": "2026-04-15T10:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}, "identity_providers": {"href": "https://api.acquia.com/v3/identity-providers?filter=domain_id%3Ddom-456"}}}, {"domain_id": "dom-789", "domain": "acme.corp", "subscription_id": "sub-123", "health": {"code": "200", "summary": "Verified", "details": "The DNS TXT record has been confirmed and the domain is verified."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.corp", "value": "xyz789abc123", "health": {"code": "200", "summary": "Verified", "details": "The TXT record at _acquia-challenge.acme.corp matches the expected value."}}, "verified_at": "2026-04-20T09:00:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-789"}, "identity_providers": {"href": "https://api.acquia.com/v3/identity-providers?filter=domain_id%3Ddom-789"}}}]}}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "post": {"summary": "Create the SSO policy for an Identity Provider.", "operationId": "createIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:create-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_CreateSsoPolicyRequest"}, "responses": {"202": {"description": "SSO policy creation initiated. The policy is being activated. Poll the SSO policy resource to verify activation.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy creation has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy creation has been accepted."}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "put": {"summary": "Update the SSO policy for an Identity Provider.", "operationId": "updateIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:update-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "requestBody": {"$ref": "#/components/requestBodies/Federated_Authentication_API_UpdateSsoPolicyRequest"}, "responses": {"202": {"description": "SSO policy update initiated. The policy changes are being applied. Poll the SSO policy resource to verify the changes.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy update has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy update has been accepted."}}}}, "400": {"$ref": "#/components/responses/Federated_Authentication_API_ValidationError"}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}, "delete": {"summary": "Delete the SSO policy for an Identity Provider.", "operationId": "deleteIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:delete-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"202": {"description": "SSO policy deletion initiated. The policy is being deactivated. Poll the Identity Provider resource to verify the policy has been removed.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy deletion has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy deletion has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers/{identityProviderId}/policies/sso/actions/enable": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Enable the SSO policy for an Identity Provider.", "operationId": "enableIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:enable-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"202": {"description": "SSO policy enablement initiated. The policy is being enabled and will enforce domains. Poll the SSO policy resource to verify the status change.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy enablement has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy enablement has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}, "/identity-providers/{identityProviderId}/policies/sso/actions/disable": {"servers": [{"url": "https://api.acquia.com/v3"}], "post": {"summary": "Disable the SSO policy for an Identity Provider.", "operationId": "disableIdentityProviderSSOPolicyByIdentityProviderId", "tags": ["Identity Providers"], "x-acquia-exposure": {"channels": {"rest": {"enabled": true}, "cli": {"enabled": true, "command": "identity-providers:disable-sso-policy"}}, "stability": "development", "audience": ["public"]}, "x-acquia-operation": {"provider": {"service": "identity-service"}}, "parameters": [{"$ref": "#/components/parameters/Federated_Authentication_API_IdentityProviderId"}], "responses": {"202": {"description": "SSO policy disablement initiated. The policy is being disabled and will no longer enforce domains. Poll the SSO policy resource to verify the status change.", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Message"}, {"type": "object", "properties": {"message": {"const": "SSO policy disablement has been accepted."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/9078ead6-dfc9-4868-8800-723fb6da706f/policies/sso"}}, "message": "SSO policy disablement has been accepted."}}}}, "401": {"$ref": "#/components/responses/Federated_Authentication_API_UnauthorizedError"}, "403": {"$ref": "#/components/responses/Federated_Authentication_API_ForbiddenError"}, "404": {"$ref": "#/components/responses/Federated_Authentication_API_NotFoundError"}, "409": {"$ref": "#/components/responses/Federated_Authentication_API_InvalidOperationError"}, "500": {"$ref": "#/components/responses/Federated_Authentication_API_InternalServerError"}}, "security": [{"Federated_Authentication_API_BearerAuth": []}]}}}, "components": {"parameters": {"Codebase_Service_API_codebaseId": {"$ref": "#/components/parameters/Codebase_Service_API_CodebaseId"}, "Codebase_Service_API_patternId": {"$ref": "#/components/parameters/Codebase_Service_API_PatternId"}, "Codebase_Service_API_referenceName": {"$ref": "#/components/parameters/Codebase_Service_API_ReferenceName"}, "Codebase_Service_API_subscriptionId": {"$ref": "#/components/parameters/Codebase_Service_API_SubscriptionId"}, "Codebase_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Codebase_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Codebase_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Codebase_Service_API_CodebaseId": {"name": "codebaseId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the codebase."}, "Codebase_Service_API_ReferenceName": {"name": "referenceName", "in": "path", "required": true, "description": "Name of the git reference (branch or tag). Slashes must be URL-encoded as `%2F` in the path (e.g., `feature%2Fbranch-name`).", "schema": {"type": "string", "pattern": "^[^/]+$"}}, "Codebase_Service_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Codebase_Service_API_PatternId": {"name": "patternId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the domain pattern."}, "Codebase_Service_API_SubscriptionId": {"name": "subscriptionId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the subscription"}, "Site_Service_API_siteId": {"$ref": "#/components/parameters/Site_Service_API_SiteId"}, "Site_Service_API_codebaseId": {"$ref": "#/components/parameters/Site_Service_API_CodebaseId"}, "Site_Service_API_subscriptionId": {"$ref": "#/components/parameters/Site_Service_API_SubscriptionId"}, "Site_Service_API_environmentId": {"$ref": "#/components/parameters/Site_Service_API_EnvironmentId"}, "Site_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Site_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Site_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Site_Service_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Site_Service_API_SiteId": {"name": "siteId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "example": "12345678-1234-1234-1234-123456789012"}, "description": "Unique identifier for the site"}, "Site_Service_API_CodebaseId": {"name": "codebaseId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "example": "550e8400-e29b-41d4-a716-446655441212"}, "description": "Unique identifier for the codebase"}, "Site_Service_API_SubscriptionId": {"name": "subscriptionId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "example": "550e8300-e29b-41d4-a716-446655441212"}, "description": "Unique identifier for the subscription"}, "Site_Service_API_EnvironmentId": {"name": "environmentId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "example": "0ebce493-9d09-479d-a9a8-138a206fa687"}, "description": "Unique identifier for the environment"}, "CDN_API_SubscriptionUuid": {"name": "subscriptionUuid", "in": "path", "required": true, "description": "The unique identifier of the subscription.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_DomainName": {"name": "domainName", "in": "path", "required": true, "description": "The fully qualified domain name.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9]?(\\.[a-zA-Z]{2,})+$"}}, "CDN_API_EnvironmentId": {"name": "environmentId", "in": "path", "required": true, "description": "The unique identifier of the environment.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_RuleSetId": {"name": "ruleSetId", "in": "path", "required": true, "description": "The unique identifier of the security rule set.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_IpRuleId": {"name": "ipRuleId", "in": "path", "required": true, "description": "The unique identifier of the IP rule.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_CustomRuleId": {"name": "customRuleId", "in": "path", "required": true, "description": "The unique identifier of the custom security rule.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_RateLimitingRuleId": {"name": "rateLimitingRuleId", "in": "path", "required": true, "description": "The unique identifier of the rate limiting rule.", "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}}, "CDN_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "CDN_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "CDN_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "CDN_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "SSH_Key_Service_API_SshKeyId": {"name": "sshKeyId", "in": "path", "description": "The SSH key's unique identifier.", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "example": "981b7910-2fe9-11e9-b210-d663bd873d93"}, "SSH_Key_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "SSH_Key_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "SSH_Key_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals (default if no operator specified)\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `label=primary` - Filter by label equals primary\n- `fingerprint=@SHA256` - Filter by fingerprint containing \"SHA256\"\n- `label=primary;fingerprint=@SHA256` - label is primary AND fingerprint contains SHA256\n- `label=primary,label=backup` - label is primary OR backup\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "label=primary;fingerprint=@SHA256"}, "SSH_Key_Service_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Failover_Service_API_environmentId": {"$ref": "#/components/parameters/Failover_Service_API_EnvironmentId"}, "Failover_Service_API_failoverGroupId": {"$ref": "#/components/parameters/Failover_Service_API_FailoverGroupId"}, "Failover_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Failover_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Failover_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Failover_Service_API_FailoverGroupId": {"name": "failoverGroupId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the failover group."}, "Failover_Service_API_EnvironmentId": {"name": "environmentId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the environment."}, "Tag_API_tagName": {"$ref": "#/components/parameters/Tag_API_TagName"}, "Tag_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Tag_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Tag_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Tag_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Tag_API_TagName": {"name": "tagName", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the tag."}, "Environment_Service_API_environmentId": {"$ref": "#/components/parameters/Environment_Service_API_EnvironmentId"}, "Environment_Service_API_siteId": {"$ref": "#/components/parameters/Environment_Service_API_SiteId"}, "Environment_Service_API_deploymentId": {"$ref": "#/components/parameters/Environment_Service_API_DeploymentId"}, "Environment_Service_API_codebaseId": {"$ref": "#/components/parameters/Environment_Service_API_CodebaseId"}, "Environment_Service_API_domainName": {"$ref": "#/components/parameters/Environment_Service_API_DomainName"}, "Environment_Service_API_backupId": {"$ref": "#/components/parameters/Environment_Service_API_BackupId"}, "Environment_Service_API_privateNetworkId": {"$ref": "#/components/parameters/Environment_Service_API_PrivateNetworkId"}, "Environment_Service_API_patternId": {"$ref": "#/components/parameters/Environment_Service_API_PatternId"}, "Environment_Service_API_CodebaseId": {"name": "codebaseId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Codebase identifier"}, "Environment_Service_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Environment_Service_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Environment_Service_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}, "Environment_Service_API_EnvironmentId": {"name": "environmentId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the environment."}, "Environment_Service_API_SiteId": {"name": "siteId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the site."}, "Environment_Service_API_PrivateNetworkId": {"name": "privateNetworkId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Private network identifier"}, "Environment_Service_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Environment_Service_API_DomainName": {"name": "domainName", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?(\\.[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?)*$"}, "description": "The fully-qualified domain name (e.g., www.example.com)."}, "Environment_Service_API_BackupId": {"name": "backupId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Database backup identifier"}, "Environment_Service_API_DeploymentId": {"name": "deploymentId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the deployment."}, "Environment_Service_API_PatternId": {"name": "patternId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the domain pattern."}, "Federated_Authentication_API_SubscriptionId": {"name": "subscriptionId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the subscription."}, "Federated_Authentication_API_SsoDomainId": {"name": "domainId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the domain."}, "Federated_Authentication_API_IdentityProviderId": {"name": "identityProviderId", "in": "path", "required": true, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$"}, "description": "Unique identifier for the identity provider."}, "Federated_Authentication_API_Offset": {"name": "offset", "in": "query", "description": "The number of items to skip before starting to collect the result set.", "required": false, "schema": {"type": "integer", "minimum": 0, "example": 20}}, "Federated_Authentication_API_Limit": {"name": "limit", "in": "query", "description": "The maximum number of items to return per page.", "required": false, "schema": {"type": "integer", "minimum": 1, "example": 10}}, "Federated_Authentication_API_Sort": {"name": "sort", "in": "query", "description": "Sort the result set by one or more fields.\n**Format:** `field1,field2,-field3`\n**Sort order:**\n- No prefix - Ascending order (default)\n- `-` prefix - Descending order\n**Multiple fields:**\n- Fields are processed in the order specified\n- First field has highest priority\n- Use comma to separate multiple fields\n**Examples:**\n- `name` - Sort by name in ascending order\n- `-created_at` - Sort by created_at in descending order\n- `name,-created_at` - Sort by name ascending, then created_at descending\n- `status,name,-updated_at` - Sort by status ascending, then name ascending, then updated_at descending\n", "required": false, "schema": {"type": "string", "pattern": "^(-?[a-zA-Z0-9_]+)(,-?[a-zA-Z0-9_]+)*$"}, "example": "name,-created_at"}, "Federated_Authentication_API_Filter": {"name": "filter", "in": "query", "description": "Filter the result set using field-based criteria.\n**Format:** `field=value` or `fieldvalue`\n**Logical operators:**\n- `,` (comma) - OR logic between filters\n- `;` (semicolon) - AND logic between filters\n- **Note:** Cannot mix OR and AND operators in the same query\n**Comparison operators:**\n- `=` - Equals. This is the default comparison operator; `:` is accepted as a backward-compatible alias for `=`\n- `!=` - Does not equal\n- `>` - Greater than\n- `<` - Less than\n- `>=` - Greater than or equal to\n- `<=` - Less than or equal to\n- `=@` - Contains substring\n- `!@` - Does not contain substring\n**Wildcards:**\n- `*` - Wildcard character for pattern matching\n**Examples:**\n- `status=active` - Filter by status equals active\n- `name=@prod` - Filter by name containing \"prod\"\n- `status=active;type=standard` - Status is active AND type is standard\n- `status=active,status=pending` - Status is active OR pending\n", "required": false, "schema": {"type": "string", "pattern": "^[a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+([;,][a-zA-Z0-9_]+(=@|!@|!=|>=|<=|[:=]|>|<)[a-zA-Z0-9_\\-*.]+)*$"}, "example": "status=active;type=standard"}}, "schemas": {"Codebase_Service_API_Codebase": {"type": "object", "properties": {"id": {"type": "string", "description": "Unique identifier for the codebase"}, "label": {"type": "string", "description": "Human-readable label for the codebase"}, "region": {"type": "string", "description": "AWS region of the codebase"}, "vcs_url": {"type": "string", "format": "uri", "description": "VCS repository URL"}, "repository_id": {"type": "string", "description": "VCS repository identifier"}, "created_at": {"type": "string", "format": "date-time", "description": "Creation timestamp"}, "updated_at": {"type": "string", "format": "date-time", "description": "Last update timestamp"}, "description": {"type": "string", "description": "Description of the codebase"}, "flags": {"type": "object", "properties": {"is_active": {"type": "boolean", "description": "Whether the codebase is active"}, "is_meo": {"type": "boolean", "description": "Whether the codebase is MEO"}}, "required": ["is_active", "is_meo"], "description": "Feature flags for the codebase"}, "hash": {"type": "string", "description": "Codebase hash"}, "applications_total": {"type": "integer", "description": "Total number of applications linked to this codebase"}}, "required": ["id", "label", "region", "vcs_url", "repository_id", "created_at", "updated_at", "flags", "hash", "applications_total"]}, "Codebase_Service_API_CodebaseReference": {"type": "object", "properties": {"id": {"type": "string", "description": "Unique identifier for the reference"}, "name": {"type": "string", "description": "Name of the git reference"}, "type": {"type": "string", "enum": ["branch", "tag"], "description": "Type of the git reference"}}, "required": ["id", "name", "type"]}, "Codebase_Service_API_DomainPattern": {"type": "object", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the domain pattern."}, "pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])(?=.*\\[environment-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The domain pattern string, optionally followed by a single path segment (e.g. [site-name].[environment-name].acme.com/app). Both [site-name] and [environment-name] tokens are mandatory at codebase level. Domain rules (enforced in service layer): \u2264 200 chars excluding token placeholders, at least 2 components (must contain .), no IP addresses, no forbidden suffixes (acquia-sites.com, hosting.acquia.com), no wildcards, no leading/trailing dot or hyphen, no consecutive dots, no query string or fragment. Path rules: optional, max 255 chars, must match ^/[A-Za-z0-9._-]+$, max 1 segment. DNS label limit: 63 chars after token substitution ([site-name] \u2264 14 chars, [environment-name] \u2264 10 chars). One pattern per codebase.\n", "example": "[site-name].[environment-name].acme.com"}}, "required": ["id", "pattern"]}, "Codebase_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Codebase_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Codebase_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Codebase_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Codebase_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Codebase_Service_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Codebase_Service_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Codebase_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_Message": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Codebase_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "Codebase_Service_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Codebase_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Site_Service_API_Site": {"type": "object", "description": "A Site resource", "properties": {"id": {"type": "string", "description": "The unique identifier of the site", "pattern": "^[a-zA-Z0-9-]+$", "example": "12345678-1234-1234-1234-123456789012"}, "name": {"type": "string", "description": "The machine name of the site. Must start with a lowercase letter and contain only lowercase letters and numbers.", "minLength": 1, "maxLength": 14, "pattern": "^[a-z][a-z0-9]*$", "example": "mysite"}, "label": {"type": "string", "description": "The human-readable label of the site", "minLength": 1, "maxLength": 50, "example": "My Site 1"}, "description": {"type": "string", "description": "A description of the site", "maxLength": 512, "example": "A production site for the marketing team."}, "codebase_id": {"type": "string", "description": "The unique identifier of the codebase this site belongs to", "pattern": "^[a-zA-Z0-9-]+$", "example": "550e8400-e29b-41d4-a716-446655441210"}, "status": {"type": "string", "description": "The current lifecycle status of the site. ready indicates the site is active and operational. marked-for-deletion indicates the site has been scheduled for deletion and can still be recovered.\n", "enum": ["ready", "marked-for-deletion"], "example": "ready"}, "delete_at": {"type": "string", "format": "date-time", "description": "ISO 8601 datetime indicating when the site is scheduled for deletion. Only present when status is marked-for-deletion.", "example": "2025-06-15T00:00:00Z"}}, "required": ["id", "name", "label", "codebase_id", "status"]}, "Site_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Site_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Site_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Site_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Site_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Site_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Site_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Site_Service_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Site_Service_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Site_Service_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Site_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Site_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Site_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Site_Service_API_Message": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Site_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Site_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "CDN_API_Domain": {"type": "object", "description": "CDN domain resource.", "properties": {"domain": {"type": "string", "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9]?(\\.[a-zA-Z]{2,})+$", "description": "The fully qualified domain name."}, "subscription_uuid": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "The unique identifier of the subscription the domain belongs to."}, "environment_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "The environment identifier associated with the domain."}, "application_name": {"type": "string", "description": "The name of the application associated with the domain."}, "status": {"type": "string", "description": "The current status of the domain.", "enum": ["connecting-to-edge", "domain-validation-pending", "ready-for-dns-repointing", "configuration-failed", "configured"]}, "ownership_validation_cname": {"type": "string", "description": "The CNAME record that must be created on the domain's DNS to validate ownership."}, "bandwidth_usage_tb": {"type": "number", "format": "float", "description": "The bandwidth usage for the domain in terabytes."}, "created_at": {"type": "string", "format": "date-time", "description": "The timestamp when the domain was created."}, "updated_at": {"type": "string", "format": "date-time", "description": "The timestamp when the domain was last updated."}}, "required": ["domain", "subscription_uuid", "environment_id", "status", "application_name", "ownership_validation_cname", "bandwidth_usage_tb", "created_at", "updated_at"]}, "CDN_API_SecurityRuleSet": {"type": "object", "properties": {"id": {"type": "integer", "minimum": 1, "description": "The unique identifier of the security ruleset."}, "name": {"type": "string", "description": "The display name of the security ruleset."}, "is_enabled": {"type": "boolean", "description": "Indicates whether the security ruleset is enabled."}, "description": {"type": "string", "description": "The description of the security ruleset."}, "type": {"type": "string", "description": "The type of the security ruleset.", "enum": ["owasp", "acquia-managed"]}}, "required": ["id", "name", "is_enabled"]}, "CDN_API_IpRule": {"type": "object", "properties": {"id": {"type": "integer", "minimum": 1, "description": "The unique identifier of the IP rule."}, "display_name": {"type": "string", "description": "The display name of the IP rule."}, "action": {"type": "string", "enum": ["block", "allow"], "description": "The action applied when the rule matches."}, "description": {"type": "string", "description": "The description of the IP rule."}, "ips": {"type": "array", "description": "The IPs or CIDR blocks associated with the rule.", "items": {"type": "string", "description": "An IP address or CIDR block."}}, "created_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was created."}, "updated_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was last updated."}}, "required": ["id", "display_name", "action", "ips", "created_at", "updated_at"]}, "CDN_API_CustomRule": {"type": "object", "properties": {"id": {"type": "integer", "minimum": 1, "description": "The unique identifier of the custom security rule."}, "display_name": {"type": "string", "description": "The display name of the custom security rule."}, "action": {"type": "string", "enum": ["block", "allow", "alert"], "description": "The action applied when the rule matches."}, "priority": {"type": "integer", "minimum": 1, "description": "The priority order for the rule. Lower values are evaluated first.\nPriorities must be unique within a subscription \u2014 creating or\nupdating a rule with a priority already in use replaces the\nexisting rule at that priority.\n"}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "paths": {"type": "array", "description": "The paths the rule applies to.", "items": {"type": "string", "description": "A path pattern."}}, "mapped_domains_count": {"type": "integer", "description": "The number of domains the rule is mapped to."}, "targets": {"type": "array", "description": "Conditions that must match for the rule to fire.", "items": {"oneOf": [{"description": "Range match for IP or ASN ranges.", "type": "object", "required": ["attribute", "criteria", "value"], "additionalProperties": false, "properties": {"attribute": {"type": "string", "description": "The request attribute the rule inspects.", "enum": ["source-ip", "asn"]}, "criteria": {"type": "string", "description": "How `value` is compared against `attribute`.", "enum": ["range"]}, "value": {"type": "object", "description": "Range bounds for IP or ASN ranges.", "additionalProperties": false, "required": ["from", "to"], "properties": {"from": {"type": "string", "description": "The start of the range."}, "to": {"type": "string", "description": "The end of the range."}}}}}, {"description": "Value-list match for non-header, non-query attributes.", "type": "object", "required": ["attribute", "criteria", "value"], "additionalProperties": false, "properties": {"attribute": {"type": "string", "description": "The request attribute the rule inspects.", "enum": ["source-ip", "country", "method", "path", "asn"]}, "criteria": {"type": "string", "description": "How `value` is compared against `attribute`.", "enum": ["equals", "contains", "regex"]}, "value": {"type": "object", "description": "A list of candidate values combined with OR.", "additionalProperties": false, "required": ["values"], "properties": {"values": {"type": "array", "description": "The list of values.", "items": {"type": "string", "description": "A value."}}}}}}, {"description": "Key-value match for header or query-string attributes.", "type": "object", "required": ["attribute", "criteria", "value"], "additionalProperties": false, "properties": {"attribute": {"type": "string", "description": "The request attribute the rule inspects.", "enum": ["header", "query-string"]}, "criteria": {"type": "string", "description": "How `value` is compared against `attribute`.", "enum": ["equals", "contains", "regex"]}, "value": {"type": "object", "description": "Key-value matchers for header or query-string attributes.", "additionalProperties": false, "required": ["key_value_pairs"], "properties": {"key_value_pairs": {"type": "array", "description": "The list of key-value pairs.", "items": {"type": "object", "description": "A key-value pair.", "required": ["key", "value"], "properties": {"key": {"type": "string", "description": "The header or query-parameter name."}, "value": {"type": "string", "description": "The expected value."}}}}}}}}]}}, "created_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was created."}, "updated_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was last updated."}}, "required": ["id", "display_name", "action", "priority", "domains", "paths", "created_at", "updated_at", "targets"]}, "CDN_API_RateLimitingRule": {"type": "object", "properties": {"id": {"type": "integer", "minimum": 1, "description": "The unique identifier of the rate limiting rule."}, "display_name": {"type": "string", "description": "The display name of the rate limiting rule."}, "action": {"type": "string", "enum": ["block", "alert"], "description": "The action applied when the rule matches."}, "rate_limit_per_minute": {"type": "string", "enum": ["lenient", "moderate", "strict"], "description": "The rate limit category applied to the rule."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "created_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was created."}, "updated_at": {"type": "string", "format": "date-time", "description": "The timestamp when the rule was last updated."}}, "required": ["id", "display_name", "action", "rate_limit_per_minute", "domains", "created_at", "updated_at"]}, "CDN_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "CDN_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/CDN_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/CDN_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "CDN_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "CDN_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/CDN_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/CDN_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/CDN_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "CDN_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/CDN_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "CDN_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/CDN_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "CDN_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "CDN_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "CDN_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "CDN_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "CDN_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "CDN_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "CDN_API_Message": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "CDN_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"]}, "SSH_Key_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "SSH_Key_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "SSH_Key_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}, {"properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}, {"properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}]}, "SSH_Key_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}, {"properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering."}}, "additionalProperties": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}}}]}, "SSH_Key_Service_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}, {"properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting."}}, "additionalProperties": {"$ref": "#/components/schemas/SSH_Key_Service_API_HalLink"}}}}]}, "SSH_Key_Service_API_SshKey": {"allOf": [{"type": "object", "required": ["id", "label", "public_key", "fingerprint", "created_at", "user_id"], "description": "Details an SSH key.", "properties": {"id": {"type": "string", "description": "The unique identifier of the SSH key.", "pattern": "^[a-zA-Z0-9-]+$"}, "label": {"type": "string", "description": "The human-readable key label."}, "public_key": {"type": "string", "description": "The public key.", "minLength": 64}, "fingerprint": {"type": "string", "description": "The public key fingerprint.", "pattern": "^[A-Za-z0-9:+/=.-]+$"}, "created_at": {"type": "string", "format": "date-time", "description": "The key creation date."}, "user_id": {"type": "string", "description": "The unique identifier of the user who owns this SSH key.", "pattern": "^[a-zA-Z0-9-]+$"}}}, {"$ref": "#/components/schemas/SSH_Key_Service_API_HalItem"}]}, "SSH_Key_Service_API_SshKeys": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_HalCollection"}, {"$ref": "#/components/schemas/SSH_Key_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/SSH_Key_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/SSH_Key_Service_API_SortedCollection"}, {"type": "object", "description": "A collection of SSH keys.", "properties": {"_embedded": {"type": "object", "description": "A collection of SSH keys matching the request parameters.", "properties": {"items": {"type": "array", "items": {"$ref": "#/components/schemas/SSH_Key_Service_API_SshKey"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "SSH_Key_Service_API_Message": {"allOf": [{"type": "object", "required": ["message"], "properties": {"message": {"type": "string", "description": "The human-friendly confirmation of the operation."}}}, {"$ref": "#/components/schemas/SSH_Key_Service_API_HalItem"}]}, "SSH_Key_Service_API_ValidationError": {"type": "object", "required": ["error", "message"], "description": "A validation error.", "properties": {"error": {"type": "string", "description": "The error summary."}, "message": {"type": "object", "description": "The validation error message keyed by its field or group name.", "additionalProperties": {"type": "string"}}}}, "SSH_Key_Service_API_Error": {"type": "object", "required": ["error", "message"], "properties": {"error": {"type": "string", "description": "The error summary."}, "message": {"type": "string", "description": "The long description for the returned error."}}}, "SSH_Key_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "SSH_Key_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/SSH_Key_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Failover_Service_API_FailoverGroup": {"type": "object", "properties": {"id": {"type": "string", "description": "Unique identifier for the failover group.", "example": "b2c3d4e5-f6a7-8901-bcde-f12345678901"}, "name": {"type": "string", "description": "The name of the failover group.", "example": "Primary Failover Group"}, "status": {"type": "string", "enum": ["creating", "normal", "failed-over", "failing-over", "error", "deleting", "deleted"], "description": "The current status of the failover group.", "example": "normal"}, "pairs": {"type": "array", "description": "The list of failover pairs belonging to this failover group.", "items": {"$ref": "#/components/schemas/Failover_Service_API_FailoverPair"}}}, "required": ["id", "name", "status", "pairs"]}, "Failover_Service_API_FailoverPair": {"type": "object", "properties": {"service_name": {"type": "string", "description": "The name of the service for this failover pair.", "example": "my-application-service"}, "primary_id": {"type": "string", "description": "The ID of the primary resource in the failover pair.", "example": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"}, "failover_id": {"type": "string", "description": "The UUID of the failover resource in the failover pair.", "example": "f1e2d3c4-b5a6-7890-fedc-ba9876543210"}}, "required": ["service_name", "primary_id", "failover_id"]}, "Failover_Service_API_MultiRegionFailoverStatus": {"type": "object", "properties": {"is_enabled": {"type": "boolean", "description": "Whether multi-region failover is enabled for the environment."}, "failover_group_id": {"type": "string", "description": "The identifier of the failover group associated with the environment."}, "is_traffic_failed_over": {"type": "boolean", "description": "Whether traffic has been failed over to the secondary region."}}, "required": ["is_enabled"]}, "Failover_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Failover_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Failover_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Failover_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Failover_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Failover_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Failover_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Failover_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Failover_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Failover_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Failover_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Failover_Service_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Failover_Service_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Failover_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Failover_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Failover_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Failover_Service_API_Message": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Failover_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "Failover_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Tag_API_Tag": {"type": "object", "properties": {"name": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "minLength": 1, "maxLength": 255, "description": "The name of the tag"}, "color": {"type": "string", "pattern": "^#((?:[a-f0-9]{3}){1,2})$", "minLength": 4, "maxLength": 7, "description": "The color of the tag"}}, "required": ["name", "color"]}, "Tag_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Tag_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Tag_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Tag_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Tag_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Tag_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Tag_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Tag_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Tag_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Tag_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Tag_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Tag_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Tag_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Tag_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Tag_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Tag_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Tag_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Tag_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Tag_API_Message": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Tag_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Tag_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "Environment_Service_API_SiteInstance": {"type": "object", "description": "Site Instance properties", "properties": {"site_id": {"type": "string", "description": "The unique identifier of the site", "pattern": "^[a-zA-Z0-9-]+$"}, "environment_id": {"type": "string", "description": "The unique identifier of the environment", "pattern": "^[a-zA-Z0-9-]+$"}, "status": {"type": "string", "description": "The current status of the site instance", "enum": ["active", "creating", "create-failed", "updating", "update-failed", "deleting", "deleted", "delete-failed"]}, "health_status": {"type": "object", "description": "Health status information for the site instance", "properties": {"code": {"type": "string", "description": "Health status code"}, "summary": {"type": "string", "description": "Summary of the health status"}, "details": {"type": "string", "description": "Detailed health status information"}}, "required": ["code", "summary", "details"]}, "domains": {"type": "array", "description": "List of domains associated with the site instance", "items": {"type": "string"}}, "deployment_order": {"type": ["integer", "null"], "description": "The order in which this site instance is deployed relative to others.", "example": 1}, "delete_at": {"type": ["string", "null"], "format": "date-time", "description": "The scheduled deletion date-time for this site instance, if set."}, "date_marked_for_deletion": {"type": ["string", "null"], "format": "date-time", "description": "The date-time when this site instance was marked for deletion."}, "protection_mode": {"type": ["object", "null"], "description": "The current protection mode of the site instance", "properties": {"is_enabled": {"type": "boolean", "description": "Indicates whether the protection mode is enabled for the site instance"}, "is_inherited": {"type": "boolean", "description": "Indicates whether the protection mode is inherited from the environment"}}, "required": ["is_enabled", "is_inherited"]}}, "required": ["site_id", "environment_id", "status", "health_status", "domains"]}, "Environment_Service_API_Environment": {"type": "object", "description": "Environment properties", "properties": {"id": {"type": "string", "description": "The unique identifier of the environment", "pattern": "^[a-zA-Z0-9-]+$"}, "name": {"type": "string", "description": "The machine name of the environment"}, "label": {"type": "string", "description": "The human-readable label of the environment"}, "description": {"type": "string", "description": "A description of the environment"}, "status": {"type": "string", "description": "The current status of the environment", "enum": ["normal", "allocated", "launching", "killed", "cancelled", "stopped"]}, "flags": {"type": "object", "description": "Environment configuration flags", "additionalProperties": {"type": "boolean"}}, "properties": {"type": "object", "description": "Environment PHP and server properties", "properties": {"version": {"type": "string", "description": "PHP version"}, "max_execution_time": {"type": "integer", "description": "Maximum execution time in seconds"}, "memory_limit": {"type": "integer", "description": "Memory limit in MB"}, "apcu": {"type": "integer", "description": "APCu cache size in MB"}, "client_max_body_size": {"type": "integer", "description": "Maximum client body size in MB"}, "max_input_vars": {"type": "integer", "description": "Maximum number of input variables"}, "max_post_size": {"type": "integer", "description": "Maximum POST size in MB"}, "memcached_limit": {"type": "integer", "description": "Memcached limit in MB"}, "upload_max_filesize": {"type": "integer", "description": "Maximum upload file size in MB"}, "operating_system": {"type": "string", "description": "Operating system codename"}}}, "reference": {"type": "string", "description": "The code reference (branch, tag, or commit) deployed to this environment"}, "code_switch_status": {"type": "string", "description": "The status of the Switch Code action", "enum": ["IDLE", "IN_PROGRESS"]}, "ssh_url": {"type": "string", "format": "uri", "description": "The SSH connection string for accessing this environment"}}, "required": ["id", "name", "label", "status", "flags", "properties", "reference", "code_switch_status", "ssh_url"]}, "Environment_Service_API_EmbeddedCodebase": {"type": "object", "description": "Embedded codebase resource", "properties": {"id": {"type": "string", "description": "The unique identifier of the codebase"}}, "required": ["id"]}, "Environment_Service_API_Deployment": {"type": "object", "description": "Deployment properties", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the deployment."}, "environment_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Identifier of the environment this deployment belongs to."}, "status": {"type": "string", "description": "Current status of the deployment.", "enum": ["waiting", "received", "started", "done", "failed", "error", "killed"]}, "code_reference": {"type": "string", "description": "The code reference (e.g. branch or tag) deployed."}, "run_hooks": {"type": "boolean", "description": "Whether deployment hooks were run."}, "hooks_argument": {"type": ["string", "null"], "description": "Additional arguments passed to deployment hooks."}, "created_at": {"type": "string", "format": "date-time", "description": "Timestamp when the deployment was created."}, "started_at": {"type": ["string", "null"], "format": "date-time", "description": "Timestamp when the deployment started."}, "completed_at": {"type": ["string", "null"], "format": "date-time", "description": "Timestamp when the deployment completed."}, "sender_id": {"type": ["string", "null"], "description": "Identifier of the user or system that initiated the deployment."}, "logs": {"type": ["string", "null"], "description": "Deployment log output."}}, "required": ["id", "environment_id", "status", "code_reference", "run_hooks", "created_at"]}, "Environment_Service_API_CodeDeploy": {"type": "object", "properties": {"concurrency": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Maximum number of concurrent code deploys allowed for the environment."}}, "required": ["concurrency"]}, "Environment_Service_API_Domain": {"type": "object", "description": "Domain properties", "properties": {"name": {"type": "string", "description": "The domain name."}, "is_managed": {"type": "boolean", "description": "Whether the domain is managed by Acquia."}}, "required": ["name", "is_managed"]}, "Environment_Service_API_DomainStatus": {"type": "object", "description": "Domain DNS status properties", "properties": {"hostname": {"type": "string", "description": "The domain name."}, "site_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Identifier of the site this domain belongs to."}, "environment_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Identifier of the environment this domain belongs to."}, "ip_addresses": {"type": "array", "description": "List of IP addresses resolving for this domain.", "items": {"type": "string"}}, "cnames": {"type": "array", "description": "List of CNAME records resolving for this domain.", "items": {"type": "string"}}, "flags": {"type": "object", "description": "Status flags for the domain.", "properties": {"default": {"type": "boolean", "description": "Whether this is the default domain."}, "active": {"type": "boolean", "description": "Whether the domain is active."}, "dns_resolves": {"type": "boolean", "description": "Whether the domain DNS resolves correctly."}, "acquia_hosted": {"type": "boolean", "description": "Whether the domain is hosted on Acquia infrastructure."}}, "required": ["default", "active", "dns_resolves", "acquia_hosted"]}}, "required": ["hostname", "site_id", "environment_id", "ip_addresses", "cnames", "flags"]}, "Environment_Service_API_Database": {"type": "object", "description": "Database properties", "properties": {"database_name": {"type": "string", "description": "The name of the database."}, "database_role": {"type": "string", "description": "The role of the database (e.g. the site username)."}}, "required": ["database_name", "database_role"]}, "Environment_Service_API_DatabaseConnection": {"type": "object", "description": "Database connection credential properties", "properties": {"db_host": {"type": "string", "description": "The database host."}, "name": {"type": "string", "description": "The database name."}, "password": {"type": "string", "description": "The database password."}, "user_name": {"type": "string", "description": "The database username."}, "ssh_host": {"type": "string", "description": "The SSH host for tunneling to the database."}}, "required": ["db_host", "name", "password", "user_name", "ssh_host"]}, "Environment_Service_API_DatabaseBackup": {"type": "object", "description": "Database backup properties", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the database backup."}, "database_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Identifier of the database this backup belongs to."}, "created_at": {"type": "string", "format": "date-time", "description": "Timestamp when the backup was created."}, "type": {"type": "string", "enum": ["DAILY", "ON_DEMAND"], "description": "The type of backup."}}, "required": ["id", "database_id", "created_at", "type"]}, "Environment_Service_API_EgressIp": {"type": "object", "description": "Egress IP properties", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the egress IP."}, "status": {"type": "string", "description": "Current status of the egress IP."}, "ipv4": {"type": "string", "description": "The IPv4 address."}, "ipv6": {"type": ["string", "null"], "description": "The IPv6 address, if assigned."}, "flags": {"type": "object", "description": "Status flags for the egress IP.", "additionalProperties": {"type": "boolean"}}}, "required": ["id", "status", "ipv4", "flags"]}, "Environment_Service_API_TrustedProxies": {"type": "object", "description": "Trusted proxy configuration properties", "properties": {"cidrs_ipv4": {"type": "array", "description": "List of trusted IPv4 CIDR blocks.", "items": {"type": "string"}}, "cidrs_ipv6": {"type": "array", "description": "List of trusted IPv6 CIDR blocks.", "items": {"type": "string"}}, "associated_cdns": {"type": "object", "description": "Map of CDN configurations associated with this environment, keyed by CDN name.", "additionalProperties": {"type": "object", "properties": {"label": {"type": "string", "description": "Display label for the CDN."}, "is_enabled": {"type": "boolean", "description": "Whether the CDN is enabled."}}, "required": ["label", "is_enabled"]}}}, "required": ["cidrs_ipv4", "cidrs_ipv6", "associated_cdns"]}, "Environment_Service_API_PrivateNetwork": {"type": "object", "description": "Private network reference properties", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the private network."}, "label": {"type": ["string", "null"], "description": "Human-readable label for the private network."}}, "required": ["id"]}, "Environment_Service_API_DomainPattern": {"type": "object", "properties": {"id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "Unique identifier for the domain pattern."}, "pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The domain pattern string, optionally followed by a single path segment (e.g. [site-name].acme.com/app). The [site-name] token is mandatory; [environment-name] is optional at environment level. Domain rules (enforced in service layer): \u2264 200 chars excluding token placeholders, at least 2 components (must contain .), no IP addresses, no forbidden suffixes (acquia-sites.com, hosting.acquia.com), no wildcards, no leading/trailing dot or hyphen, no consecutive dots, no query string or fragment. Path rules: optional, max 255 chars, must match ^/[A-Za-z0-9._-]+$, max 1 segment. DNS label limit: 63 chars after token substitution ([site-name] \u2264 14 chars). One pattern per environment.\n", "example": "[site-name].acme.com"}}, "required": ["id", "pattern"]}, "Environment_Service_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Environment_Service_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Environment_Service_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Environment_Service_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Environment_Service_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Environment_Service_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Environment_Service_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Environment_Service_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Environment_Service_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Environment_Service_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Environment_Service_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Environment_Service_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Environment_Service_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Environment_Service_API_Message": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Environment_Service_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}, "Environment_Service_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Environment_Service_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Federated_Authentication_API_IdentityProvider": {"type": "object", "properties": {"identity_provider_id": {"type": "string", "description": "Unique identifier for the identity provider."}, "label": {"type": "string", "description": "The name of the Identity Provider."}, "subscription_id": {"type": "string", "description": "Unique identifier for the subscription that the Identity Provider belongs to."}, "idp_entity_id": {"type": "string", "format": "uri", "description": "The Identity Provider Entity ID."}, "sp_entity_id": {"type": "string", "format": "uri", "description": "The Service Provider Entity ID."}, "sso_url": {"type": "string", "format": "uri", "description": "The Single Sign-On URL for the Identity Provider."}, "certificate": {"type": "string", "description": "The X.509 certificate used for SAML authentication."}, "created_at": {"type": "string", "format": "date-time", "description": "Timestamp when the Identity Provider was created."}}, "required": ["identity_provider_id", "label", "subscription_id", "idp_entity_id", "sp_entity_id", "sso_url", "certificate", "created_at"]}, "Federated_Authentication_API_SsoDomain": {"type": "object", "properties": {"domain_id": {"type": "string", "description": "Unique identifier for the domain."}, "domain": {"type": "string", "pattern": "^[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?(\\.[a-zA-Z]{2,})+$", "description": "The domain name (e.g., \"acme.com\")."}, "subscription_id": {"type": "string", "description": "Unique identifier for the subscription that the domain belongs to."}, "health": {"type": "object", "description": "The overall verification health of the domain. Uses the same code semantics as the platform email domain-verification system: `200` verified, `202` verification pending or in progress, `404` DNS record not found or could not be validated.", "properties": {"code": {"type": "string", "enum": ["200", "202", "404"], "description": "Machine-readable verification status code. `200` \u2014 verified. `202` \u2014 verification pending or in progress; retry after propagation. `404` \u2014 DNS TXT record not found or does not match expected value."}, "summary": {"type": "string", "description": "Short human-readable label for the verification state (e.g., \"Verified\", \"Verification pending\", \"Missing DNS record\")."}, "details": {"type": "string", "description": "Actionable explanation of the current state. For `404`, describes what was checked and what the customer should do next."}}, "required": ["code", "summary", "details"]}, "verification_record": {"type": "object", "description": "DNS TXT record the customer must publish to verify domain ownership.", "properties": {"type": {"type": "string", "const": "TXT", "description": "DNS record type."}, "host": {"type": "string", "description": "DNS record host name."}, "value": {"type": "string", "description": "Expected DNS record value."}, "health": {"type": "object", "description": "Verification health specific to this DNS record. Anchors the failure reason to the exact record the customer needs to fix, matching the per-record health pattern used in platform email domain verification.", "properties": {"code": {"type": "string", "enum": ["200", "202", "404"], "description": "`200` \u2014 record found and value matches. `202` \u2014 check in progress. `404` \u2014 record not found or value does not match."}, "summary": {"type": "string", "description": "Short human-readable label for this record's verification state."}, "details": {"type": "string", "description": "Actionable explanation; for `404`, states what was checked and what to fix."}}, "required": ["code", "summary", "details"]}}, "required": ["type", "host", "value", "health"]}, "verified_at": {"type": "string", "format": "date-time", "description": "Timestamp when the domain was successfully verified. Present only when `health.code` is `200`."}}, "required": ["domain_id", "domain", "subscription_id", "health", "verification_record"]}, "Federated_Authentication_API_SsoPolicy": {"type": "object", "description": "SSO policy that enforces an Identity Provider for specific domains.", "properties": {"status": {"type": "string", "enum": ["enabled", "disabled"], "default": "disabled", "description": "The status of the SSO policy. When enabled, the policy enforces SSO for the specified domains. Defaults to disabled on creation."}, "_embedded": {"type": "object", "description": "Embedded resources for the SSO policy.", "properties": {"domains": {"type": "array", "description": "The SSO domains enforced by this policy, each with a self link back to the authoritative SsoDomain resource.", "items": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_SsoDomain"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}}}, "required": ["domains"]}}, "required": ["status", "_embedded"]}, "Federated_Authentication_API_HalLink": {"type": "object", "description": "HAL link object", "properties": {"href": {"type": "string", "anyOf": [{"format": "uri"}, {"format": "uri-template"}], "description": "The target URI of the link (can be a URI or URI template)"}, "templated": {"type": "boolean", "description": "Whether the link is a URI template"}, "type": {"type": "string", "description": "Hint about the media type expected when dereferencing the target resource"}, "deprecation": {"type": "string", "description": "A URL to a resource that provides deprecation information"}, "name": {"type": "string", "description": "A secondary key for selecting links"}, "profile": {"type": "string", "description": "A URI that hints about the profile of the target resource"}, "title": {"type": "string", "description": "A human-readable identifier for the link"}, "hreflang": {"type": "string", "description": "The language of the target resource"}}, "required": ["href"], "examples": [{"href": "https://api.acquia.com/v3/resources/1"}, {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}]}, "Federated_Authentication_API_HalItem": {"type": "object", "properties": {"_links": {"type": "object", "description": "HAL links for the resource", "properties": {"self": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}, "required": ["self"], "additionalProperties": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}, "_embedded": {"type": "object", "description": "Embedded resources (optional)", "additionalProperties": {}}}, "required": ["_links"]}, "Federated_Authentication_API_HalCollection": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "description": "Embedded resources for the collection", "properties": {"items": {"type": "array", "description": "The array of resources in the collection", "items": {"type": "object"}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "Federated_Authentication_API_PaginatedCollection": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"prev": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink", "description": "Link to the previous page (templated)"}, "next": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink", "description": "Link to the next page (templated)"}, "offset": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for offset"}, "limit": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for limit"}}, "additionalProperties": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}, "count": {"type": "integer", "description": "The number of items in the current page"}, "total": {"type": "integer", "description": "The total number of items available"}, "pagination": {"type": "object", "properties": {"total": {"type": "integer", "description": "The total number of items available"}, "limit": {"type": "integer", "description": "The maximum number of items to retrieve in a single page"}, "offset": {"type": "integer", "description": "The starting position of the items to retrieve"}}, "required": ["total", "limit", "offset"]}}, "required": ["count", "total", "pagination"]}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "456e4567-e89b-11d3-a789-426614174000", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/456e4567-e89b-11d3-a789-426614174000"}}}, {"id": "789e4567-e89b-11d3-a789-426614174000", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/789e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=0&limit=2"}, "next": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "111e4567-e89b-11d3-a789-426614174000", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/111e4567-e89b-11d3-a789-426614174000"}}}, {"id": "222e4567-e89b-11d3-a789-426614174000", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/222e4567-e89b-11d3-a789-426614174000"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?offset=4&limit=2"}, "prev": {"href": "https://api.acquia.com/v3/resources?offset=2&limit=2"}, "offset": {"href": "https://api.acquia.com/v3/resources{?offset}", "templated": true}, "limit": {"href": "https://api.acquia.com/v3/resources{?limit}", "templated": true}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 4}, "_embedded": {"items": [{"id": "999e4567-e89b-11d3-a789-426614174000", "name": "Resource 5", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/999e4567-e89b-11d3-a789-426614174000"}}}, {"id": "aaaee567-e89b-11d3-a789-426614174000", "name": "Resource 6", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/aaaee567-e89b-11d3-a789-426614174000"}}}]}}]}, "Federated_Authentication_API_FilteredCollection": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"filter": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for filtering. The `filter` query parameter is a string to signify the fields to filter the result set by. If the filter includes logical filters this string will be delimited by a \",\" for a logical OR filter, or a \";\" for logical AND filters. Note: Only one type logical filter will be accepted. If the filter contains both OR and AND filters it will be rejected. (e.g. filter=field=value*;field2=value2* indicates that the result set will be filtered by \"field\" using the term \"value*\" AND \"field2\" using the term \"value2*\". Note that * is a wildcard character in this context). Allowed filter operators are: Equals: = (%3D), Does not equal: != (!%3D), Greater than: > (%3E), Less than: < (%3C), Greater than or equal to: >= (%3E%3D), Less than or equal to: <= (%3C%3D), Contains substring: =@ (%3D@), Does not contain substring: !@ (!@)"}}, "additionalProperties": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=field=value*;field2=value2*"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}, {"_links": {"self": {"href": "https://api.acquia.com/v3/resources?filter=created_at%3E%3D2025-05-20T00%3A00%3A00Z,created_at%3C2025-05-21T00%3A00%3A00Z"}, "filter": {"href": "https://api.acquia.com/v3/resources{?filter}", "templated": true}}, "_embedded": {"items": [{"id": "3", "name": "Resource 3", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/3"}}}, {"id": "4", "name": "Resource 4", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/4"}}}]}}]}, "Federated_Authentication_API_SortedCollection": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"type": "object", "properties": {"_links": {"type": "object", "properties": {"sort": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}, {"type": "object", "properties": {"templated": {"type": "boolean", "enum": [true]}}, "required": ["templated"]}], "description": "Templated link for sorting. The `sort` query parameter is a comma-delimited string with fields that are used for sorting. The order of fields is significant. A leading \"-\" in the field name indicates the field should be sorted in descending order. (e.g. sort=field,-field2 indicates that the result set will be sorted by \"field\" in ascending order, then by \"field2\" in descending order.)"}}, "additionalProperties": {"$ref": "#/components/schemas/Federated_Authentication_API_HalLink"}}}}], "examples": [{"_links": {"self": {"href": "https://api.acquia.com/v3/resources?sort=name,-created_at"}, "sort": {"href": "https://api.acquia.com/v3/resources{?sort}", "templated": true}}, "_embedded": {"items": [{"id": "1", "name": "Resource 1", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/1"}}}, {"id": "2", "name": "Resource 2", "_links": {"self": {"href": "https://api.acquia.com/v3/resources/2"}}}]}}]}, "Federated_Authentication_API_ValidationError": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "object", "additionalProperties": {"type": "string"}, "example": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}, "required": ["error", "message"]}, "Federated_Authentication_API_Error": {"type": "object", "properties": {"error": {"type": "string"}, "message": {"type": "string"}}, "required": ["error", "message"]}, "Federated_Authentication_API_UnauthorizedError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "unauthorized"}, "message": {"type": "string", "const": "You do not have permission to access this resource."}}, "required": ["error", "message"]}]}, "Federated_Authentication_API_ForbiddenError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "forbidden"}, "message": {"type": "string", "example": "You do not have permission to perform this action."}}, "required": ["error", "message"]}]}, "Federated_Authentication_API_NotFoundError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "not_found"}, "message": {"type": "string", "example": "The resource you are trying to access does not exist, or you do not have access to it."}}, "required": ["error", "message"]}]}, "Federated_Authentication_API_InternalServerError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "system"}, "message": {"type": "string", "pattern": "^An unknown error occurred\\. Please try your request again\\. If the problem persists, contact Acquia Support\\. Request ID: .+\\.$", "description": "Standard error message with variable request ID.", "example": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}, "required": ["error", "message"]}]}, "Federated_Authentication_API_Message": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}, {"type": "object", "properties": {"message": {"type": "string", "description": "The message content"}}, "required": ["message"]}]}, "Federated_Authentication_API_InvalidOperationError": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_Error"}, {"type": "object", "properties": {"error": {"type": "string", "const": "conflict"}, "message": {"type": "string", "example": "The requested operation is invalid or cannot be completed."}}, "required": ["error", "message"]}]}}, "responses": {"Codebase_Service_API_Codebase": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Codebase"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}, "example": {"id": "a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4", "label": "my-codebase", "region": "us-east-1", "vcs_url": "https://github.com/acquia/my-codebase.git", "repository_id": "12345678", "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-15T10:30:00Z", "description": "Main production codebase", "flags": {"is_active": true, "is_meo": false}, "hash": "abc123def456", "applications_total": 3, "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}}}}}, "Codebase_Service_API_CodebaseCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_FilteredCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Codebase"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"codebase_collection": {"summary": "Codebase collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases?limit=10&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/codebases?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases?limit=10{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/codebases?limit=10&offset=0{&filter}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 10, "offset": 0}, "_embedded": {"items": [{"id": "a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4", "label": "my-codebase", "region": "us-east-1", "vcs_url": "https://github.com/acquia/my-codebase.git", "repository_id": "12345678", "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-15T10:30:00Z", "description": "Main production codebase", "flags": {"is_active": true, "is_meo": false}, "hash": "abc123def456", "applications_total": 3, "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}}]}}}}}}}, "Codebase_Service_API_CodebaseReference": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_CodebaseReference"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}, "example": {"id": "ref-123", "name": "main", "type": "branch", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references/main"}}}}}}, "Codebase_Service_API_CodebaseReferenceCollection": {"description": "A list of git references for the codebase", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_CodebaseReference"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references?limit=10&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references?limit=10{&offset}", "templated": true}}, "count": 2, "total": 2, "pagination": {"total": 2, "limit": 10, "offset": 0}, "_embedded": {"items": [{"id": "ref-123", "name": "main", "type": "branch", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references/main"}}}, {"id": "ref-456", "name": "v1.0.0", "type": "tag", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4/references/v1.0.0"}}}]}}}}}, "Codebase_Service_API_DomainPattern": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_DomainPattern"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}, "example": {"id": "22222222-2222-2222-2222-222222222222", "pattern": "[site-name].[environment-name].acme.com", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}}}}, "links": {"self": {"operationId": "findDomainPatternByCodebaseIdAndPatternId", "parameters": {"codebaseId": "$request.path.codebaseId", "patternId": "$request.path.patternId"}}}}, "Codebase_Service_API_DomainPatternCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_DomainPattern"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"domain_pattern_collection": {"summary": "Domain pattern collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns"}, "limit": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?limit=25{&offset}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?limit=25&offset=0{&sort}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 25, "offset": 0}, "_embedded": {"items": [{"id": "22222222-2222-2222-2222-222222222222", "pattern": "[site-name].[environment-name].acme.com", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns/22222222-2222-2222-2222-222222222222"}}}]}}}, "domain_pattern_collection_empty": {"summary": "Empty domain pattern collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns"}, "limit": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?limit=25{&offset}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/codebases/22222222-2222-2222-2222-222222222222/domain-patterns?limit=25&offset=0{&sort}", "templated": true}}, "count": 0, "total": 0, "pagination": {"total": 0, "limit": 25, "offset": 0}, "_embedded": {"items": []}}}}}}}, "Codebase_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Codebase_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Codebase_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Codebase_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Codebase_Service_API_SubscriptionCodebaseCollection": {"description": "A list of codebases for the subscription", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Codebase_Service_API_FilteredCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Codebase_Service_API_Codebase"}, {"$ref": "#/components/schemas/Codebase_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"subscription_codebase_collection": {"summary": "Subscription codebase collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/sub-12345/codebases?limit=10&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/sub-12345/codebases?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/sub-12345/codebases?limit=10{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/sub-12345/codebases?limit=10&offset=0{&filter}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 10, "offset": 0}, "_embedded": {"items": [{"id": "a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4", "label": "my-codebase", "region": "us-east-1", "vcs_url": "https://github.com/acquia/my-codebase.git", "repository_id": "12345678", "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-15T10:30:00Z", "description": "Main production codebase", "flags": {"is_active": true, "is_meo": false}, "hash": "abc123def456", "applications_total": 3, "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4"}}}]}}}}}}}, "Codebase_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Codebase_Service_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Codebase_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Site_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Site_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Site_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Site_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Site_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Site_Service_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Site_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Site_Service_API_Site": {"description": "Site details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Site"}, {"$ref": "#/components/schemas/Site_Service_API_HalItem"}, {"type": "object", "properties": {"_links": {"properties": {"self": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}, "codebase": {"$ref": "#/components/schemas/Site_Service_API_HalLink"}}}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/f1a2b3c4-d5e6-7890-abcd-ef1234567890"}, "codebase": {"href": "https://api.acquia.com/v3/codebases/a9b8c7d6-e5f4-3210-abcd-ef9876543210"}}, "id": "f1a2b3c4-d5e6-7890-abcd-ef1234567890", "name": "mysite", "label": "My Site", "description": "This is a description of my site.", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210", "status": "ready"}}}, "links": {"self": {"operationId": "findSiteBySiteId", "parameters": {"siteId": "$request.path.siteId"}}}}, "Site_Service_API_SiteCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Site_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Site_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/Site_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Site_Service_API_Site"}, {"$ref": "#/components/schemas/Site_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"site_collection": {"summary": "Site collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/sites?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/sites?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/sites?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/sites?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/sites?limit=2&offset=2"}}, "count": 2, "total": 4, "pagination": {"total": 4, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "f1a2b3c4-d5e6-7890-abcd-ef1234567890", "name": "mysite", "label": "My Site", "description": "A description of my site.", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210", "status": "ready", "_links": {"self": {"href": "https://api.acquia.com/v3/sites/f1a2b3c4-d5e6-7890-abcd-ef1234567890"}}}, {"id": "e2b3c4d5-f6a7-8901-bcde-f12345678901", "name": "anothersite", "label": "Another Site", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210", "status": "marked-for-deletion", "delete_at": "2025-01-01T00:00:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sites/e2b3c4d5-f6a7-8901-bcde-f12345678901"}}}]}}}}}}}, "CDN_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "CDN_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "CDN_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "CDN_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "CDN_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "CDN_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CDN_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "CDN_API_DomainCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"$ref": "#/components/schemas/CDN_API_FilteredCollection"}, {"$ref": "#/components/schemas/CDN_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Domain"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"domains_response": {"summary": "Domain collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains?limit=2&offset=2"}}, "count": 2, "total": 50, "pagination": {"total": 50, "limit": 2, "offset": 0}, "_embedded": {"items": [{"domain": "example.com", "subscription_uuid": "12345678-1234-1234-1234-123456789012", "environment_id": "0c3f0f5f-5727-4838-9459-2d90ee1cf7c1", "application_name": "my-application", "status": "configured", "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-20T15:45:00Z", "ownership_validation_cname": "_acme-challenge.example.com", "bandwidth_usage_tb": 1.25, "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/example.com"}}}, {"domain": "test.example.org", "subscription_uuid": "12345678-1234-1234-1234-123456789012", "environment_id": "1d4f1f6f-6838-5949-a560-3e01ff2cf8d2", "application_name": "test-application", "status": "connecting-to-edge", "created_at": "2024-01-18T08:15:00Z", "ownership_validation_cname": "_acme-challenge.example.com", "bandwidth_usage_tb": 1.25, "updated_at": "2024-01-18T08:15:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/test.example.org"}}}]}}}}}}}, "CDN_API_Domain": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Domain"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"domain": "example.com", "subscription_uuid": "12345678-1234-1234-1234-123456789012", "environment_id": "0c3f0f5f-5727-4838-9459-2d90ee1cf7c1", "application_name": "my-application", "status": "configured", "ownership_validation_cname": "_acme-challenge.example.com", "bandwidth_usage_tb": 1.25, "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-20T15:45:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/example.com"}}}}}, "links": {"self": {"operationId": "findDomainBySubscriptionUuidAndDomainName", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "domainName": "$request.path.domainName"}}}}, "CDN_API_DomainCdnProvisioningAccepted": {"description": "Accepted - Provisioning in progress", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain provisioning has been started.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/example.com"}}, "message": "The domain provisioning has been started."}}}}, "CDN_API_DomainCdnDeprovisioningAccepted": {"description": "Accepted - Deprovisioning in progress", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The domain deprovisioning has been started.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/domains/example.com"}}, "message": "The domain deprovisioning has been started."}}}}, "CDN_API_PurgeAccepted": {"description": "Accepted - Purge request submitted", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The purge request has been submitted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/0c3f0f5f-5727-4838-9459-2d90ee1cf7c1/actions/purge-cdn"}}, "message": "The purge request has been submitted."}}}}, "CDN_API_SecurityRuleSet": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_SecurityRuleSet"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"id": 1, "name": "OWASP Top 10", "is_enabled": true, "description": "OWASP Top 10 security ruleset", "type": "owasp", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets/1"}}}}}, "links": {"self": {"operationId": "findSecurityRuleSetBySubscriptionUuidAndRuleSetId", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "ruleSetId": "$request.path.ruleSetId"}}}}, "CDN_API_SecurityRuleSetCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_SecurityRuleSet"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"security_rule_sets_response": {"summary": "Security rulesets collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets?limit=2{&offset}", "templated": true}}, "count": 2, "total": 5, "pagination": {"total": 5, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": 123, "name": "OWASP Core Ruleset", "is_enabled": true, "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets/123"}}}, {"id": 456, "name": "Bot Protection", "is_enabled": false, "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets/456"}}}]}}}}}}}, "CDN_API_SecurityRuleSetUpdated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The security ruleset has been updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rulesets/123"}}, "message": "The security ruleset has been updated."}}}}, "CDN_API_IpRule": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_IpRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"id": 101, "display_name": "Block office VPN", "action": "allow", "description": "Allow traffic from the office VPN", "ips": ["203.0.113.0/24"], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}}}}, "links": {"self": {"operationId": "findIpRuleBySubscriptionUuidAndIpRuleId", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "ipRuleId": "$request.path.ipRuleId"}}}}, "CDN_API_IpRuleCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"$ref": "#/components/schemas/CDN_API_FilteredCollection"}, {"$ref": "#/components/schemas/CDN_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_IpRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"ip_rules_response": {"summary": "IP rules collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules?offset=2&limit=2"}}, "count": 2, "total": 5, "pagination": {"total": 5, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": 101, "display_name": "Block office IPs", "action": "block", "description": "Blocks office IP ranges.", "ips": ["192.0.2.10", "198.51.100.0/24"], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}}, {"id": 102, "display_name": "Allow support", "action": "allow", "description": "Allows support traffic.", "ips": ["203.0.113.5"], "created_at": "2026-05-02T08:15:00Z", "updated_at": "2026-05-11T13:45:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/102"}}}]}}}}}}}, "CDN_API_IpRuleCreated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The IP rule has been created.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}, "message": "The IP rule has been created."}}}}, "CDN_API_IpRuleUpdated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The IP rule has been updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}, "message": "The IP rule has been updated."}}}}, "CDN_API_IpRuleDeleted": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The IP rule has been deleted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/ip-rules/101"}}, "message": "The IP rule has been deleted."}}}}, "CDN_API_CustomRuleCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_CustomRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"custom_rules_response": {"summary": "Custom rules collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules?limit=2{&offset}", "templated": true}}, "count": 2, "total": 5, "pagination": {"total": 5, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": 301, "display_name": "Block bad bots", "action": "block", "priority": 1, "domains": ["example.com"], "paths": ["/api/*"], "targets": [{"attribute": "source-ip", "criteria": "range", "value": {"from": "10.0.0.0", "to": "10.0.0.255"}}], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}}, {"id": 302, "display_name": "Alert login scans", "action": "alert", "priority": 2, "domains": ["shop.example.com"], "paths": ["/login"], "targets": [{"attribute": "path", "criteria": "equals", "value": {"values": ["/login"]}}], "created_at": "2026-05-02T08:15:00Z", "updated_at": "2026-05-11T13:45:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/302"}}}]}}}}}}}, "CDN_API_CustomRule": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_CustomRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"id": 301, "display_name": "Block bad bots", "action": "block", "priority": 1, "domains": ["example.com"], "paths": ["/api/*"], "targets": [{"attribute": "source-ip", "criteria": "range", "value": {"from": "10.0.0.0", "to": "10.0.0.255"}}, {"attribute": "header", "criteria": "equals", "value": {"key_value_pairs": [{"key": "User-Agent", "value": "BadBot/1.0"}]}}], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}}}}, "links": {"self": {"operationId": "findCustomRuleBySubscriptionUuidAndCustomRuleId", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "customRuleId": "$request.path.customRuleId"}}}}, "CDN_API_CustomRuleCreated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The custom security rule has been created.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}, "message": "The custom security rule has been created."}}}}, "CDN_API_CustomRuleDeleted": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The custom security rule has been deleted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}, "message": "The custom security rule has been deleted."}}}}, "CDN_API_RateLimitingRuleCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_HalCollection"}, {"$ref": "#/components/schemas/CDN_API_PaginatedCollection"}, {"$ref": "#/components/schemas/CDN_API_FilteredCollection"}, {"$ref": "#/components/schemas/CDN_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/CDN_API_RateLimitingRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"rate_limiting_rules_response": {"summary": "Rate limiting rules collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules?limit=2&offset=2"}}, "count": 2, "total": 4, "pagination": {"total": 4, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": 501, "display_name": "Rate Rule 1", "action": "alert", "rate_limit_per_minute": "lenient", "domains": ["example.com"], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}}, {"id": 502, "display_name": "Rate Rule 2", "action": "block", "rate_limit_per_minute": "strict", "domains": ["shop.example.com"], "created_at": "2026-05-02T08:15:00Z", "updated_at": "2026-05-11T13:45:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/502"}}}]}}}}}}}, "CDN_API_RateLimitingRule": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_RateLimitingRule"}, {"$ref": "#/components/schemas/CDN_API_HalItem"}]}, "example": {"id": 501, "display_name": "Rate Rule 1", "action": "alert", "rate_limit_per_minute": "lenient", "domains": ["example.com"], "created_at": "2026-05-01T12:00:00Z", "updated_at": "2026-05-10T09:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}}}}, "links": {"self": {"operationId": "findRateLimitingRuleBySubscriptionUuidAndRateLimitingRuleId", "parameters": {"subscriptionUuid": "$request.path.subscriptionUuid", "rateLimitingRuleId": "$request.path.rateLimitingRuleId"}}}}, "CDN_API_RateLimitingRuleCreated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The rate limiting rule has been created.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}, "message": "The rate limiting rule has been created."}}}}, "CDN_API_RateLimitingRuleUpdated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The rate limiting rule has been updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}, "message": "The rate limiting rule has been updated."}}}}, "CDN_API_RateLimitingRuleDeleted": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The rate limiting rule has been deleted.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/rate-limiting-rules/501"}}, "message": "The rate limiting rule has been deleted."}}}}, "CDN_API_CustomRuleUpdated": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/CDN_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "The custom security rule has been updated.", "description": "Confirmation message"}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/12345678-1234-1234-1234-123456789012/config/security/custom-rules/301"}}, "message": "The custom security rule has been updated."}}}}, "SSH_Key_Service_API_SshKeyCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_SshKeys"}, "examples": {"ssh_keys": {"summary": "SSH key collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/ssh-keys?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/ssh-keys?limit=2&offset=2"}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "1acbb1a5-e864-4b8e-a3f9-b1ed462afd25", "label": "primary", "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQChwPHzTTDKDpSbpa2+d22LcbQmsw92eLsUK3Fmei1fiGDkd34NsYCN8m7lsi3NbvdMS83CtPQPWiCveYPzFs1/hHc4PYj8opD2CNnr5iWVVbyaulCYHCgVv4aB/ojcexg8q483A4xJeF15TiCr/gu34rK6ucTvC/tn/rCwJBudczvEwt0klqYwv8Cl/ytaQboSuem5KgSjO3lMrb6CWtfSNhE43ZOw+UBFBqxIninN868vGMkIv9VY34Pwj54rPn/ItQd6Ef4B0KHHaGmzK0vfP+AK7FxNMoHnj3iYT33KZNqtDozdn5tYyH/bThPebEtgqUn+/w5l6wZIC/8zzvls/127ngHk+jNa0PlNyS2TxhPUK4NaPHIEnnrlp07JEYC4ImcBjaYCWAdcTcUkcJjwZQkN4bGmyO9cjICH98SdLD/HxqzTHeaYDbAX/Hu9HfaBb5dXLWsjw3Xc6hoVnUUZbMQyfgb0KgxDLh92eNGxJkpZiL0VDNOWCxDWsNpzwhLNkLqCvI6lyxiLaUzvJAk6dPaRhExmCbU1lDO2eR0FdSwC1TEhJOT9eDIK1r2hztZKs2oa5FNFfB/IFHVWasVFC9N2h/r/egB5zsRxC9MqBLRBq95NBxaRSFng6ML5WZSw41Qi4C/JWVm89rdj2WqScDHYyAdwyyppWU4T5c9Fmw== example@example.com", "fingerprint": "SHA256:7a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8g9h0i1j2k3l4m5n6o7p8q9r0s1", "created_at": "2024-10-01T12:30:00Z", "user_id": "a47ac10b-58cc-4372-a567-0e02b2c3d479", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/1acbb1a5-e864-4b8e-a3f9-b1ed462afd25"}}}, {"id": "2bcbb1a5-e864-4b8e-a3f9-b1ed462afd26", "label": "backup", "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFf2T1I1d8T1B9Q1b8pS6m2xvY3i5q8sNnU5oQwY5vS9 example@example.com", "fingerprint": "SHA256:9b8c7d6e5f4a3b2c1d0e9f8a7b6c5d4e3f2a1b0c9d8e7f6a5b4c3d2e1f0a9b8", "created_at": "2024-10-02T09:15:00Z", "user_id": "b58bd21c-69dd-5483-b678-1f13c3d4e580", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/2bcbb1a5-e864-4b8e-a3f9-b1ed462afd26"}}}]}}}}}}}, "SSH_Key_Service_API_SshKey": {"description": "OK", "content": {"application/hal+json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_SshKey"}, "example": {"id": "1acbb1a5-e864-4b8e-a3f9-b1ed462afd25", "label": "primary", "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQChwPHzTTDKDpSbpa2+d22LcbQmsw92eLsUK3Fmei1fiGDkd34NsYCN8m7lsi3NbvdMS83CtPQPWiCveYPzFs1/hHc4PYj8opD2CNnr5iWVVbyaulCYHCgVv4aB/ojcexg8q483A4xJeF15TiCr/gu34rK6ucTvC/tn/rCwJBudczvEwt0klqYwv8Cl/ytaQboSuem5KgSjO3lMrb6CWtfSNhE43ZOw+UBFBqxIninN868vGMkIv9VY34Pwj54rPn/ItQd6Ef4B0KHHaGmzK0vfP+AK7FxNMoHnj3iYT33KZNqtDozdn5tYyH/bThPebEtgqUn+/w5l6wZIC/8zzvls/127ngHk+jNa0PlNyS2TxhPUK4NaPHIEnnrlp07JEYC4ImcBjaYCWAdcTcUkcJjwZQkN4bGmyO9cjICH98SdLD/HxqzTHeaYDbAX/Hu9HfaBb5dXLWsjw3Xc6hoVnUUZbMQyfgb0KgxDLh92eNGxJkpZiL0VDNOWCxDWsNpzwhLNkLqCvI6lyxiLaUzvJAk6dPaRhExmCbU1lDO2eR0FdSwC1TEhJOT9eDIK1r2hztZKs2oa5FNFfB/IFHVWasVFC9N2h/r/egB5zsRxC9MqBLRBq95NBxaRSFng6ML5WZSw41Qi4C/JWVm89rdj2WqScDHYyAdwyyppWU4T5c9Fmw== example@example.com", "fingerprint": "SHA256:7a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8g9h0i1j2k3l4m5n6o7p8q9r0s1", "created_at": "2024-10-01T12:30:00Z", "user_id": "a47ac10b-58cc-4372-a567-0e02b2c3d479", "_links": {"self": {"href": "https://api.acquia.com/v3/ssh-keys/1acbb1a5-e864-4b8e-a3f9-b1ed462afd25"}}}}}, "links": {"self": {"operationId": "findSshKeyBySshKeyId", "parameters": {"sshKeyId": "$request.path.sshKeyId"}}}}, "SSH_Key_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "SSH_Key_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "SSH_Key_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "SSH_Key_Service_API_ValidationError": {"description": "Bad Request - Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required."}}}}}, "SSH_Key_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "SSH_Key_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SSH_Key_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Failover_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Failover_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Failover_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Failover_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Failover_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Failover_Service_API_FailoverGroupCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Failover_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Failover_Service_API_FilteredCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_FailoverGroup"}, {"$ref": "#/components/schemas/Failover_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"failover_group_collection": {"summary": "Failover group collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/failover-groups?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/failover-groups?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/failover-groups?limit=2&offset=0{&filter}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901", "name": "Primary Failover Group", "status": "normal", "pairs": [{"service_name": "my-application-service", "primary_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "failover_id": "f1e2d3c4-b5a6-7890-fedc-ba9876543210"}], "_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}}]}}}}}}}, "Failover_Service_API_FailoverGroup": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_FailoverGroup"}, {"$ref": "#/components/schemas/Failover_Service_API_HalItem"}]}, "example": {"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901", "name": "Primary Failover Group", "status": "normal", "pairs": [{"service_name": "my-application-service", "primary_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "failover_id": "f1e2d3c4-b5a6-7890-fedc-ba9876543210"}], "_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}}}}, "links": {"self": {"operationId": "findFailoverGroupByFailoverGroupId", "parameters": {"failoverGroupId": "$request.path.failoverGroupId"}}}}, "Failover_Service_API_MultiRegionFailoverStatus": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_MultiRegionFailoverStatus"}, {"$ref": "#/components/schemas/Failover_Service_API_HalItem"}]}, "example": {"is_enabled": true, "failover_group_id": "b2c3d4e5-f6a7-8901-bcde-f12345678901", "is_traffic_failed_over": false, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/a1b2c3d4-e5f6-7890-abcd-ef1234567890/multi-region-failover"}}}}}, "links": {"self": {"operationId": "findMultiRegionFailoverByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Failover_Service_API_CreateFailoverGroupResponse": {"description": "Failover group creation initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group creation has been initiated.", "description": "Confirmation message that the failover group creation has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group creation has been initiated."}}}}, "Failover_Service_API_DeleteFailoverGroupResponse": {"description": "Failover group deletion initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group deletion has been initiated.", "description": "Confirmation message that the failover group deletion has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group deletion has been initiated."}}}}, "Failover_Service_API_FailoverGroupFailoverResponse": {"description": "Failover group failover initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group failover initiated.", "description": "Confirmation message that the failover group failover has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group failover initiated."}}}}, "Failover_Service_API_FailoverGroupRevertFailoverResponse": {"description": "Failover group revert failover initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group revert failover initiated.", "description": "Confirmation message that the failover group revert failover has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group revert failover initiated."}}}}, "Failover_Service_API_FailoverGroupSyncResponse": {"description": "Failover group sync initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Failover group sync initiated.", "description": "Confirmation message that the failover group sync has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/failover-groups/b2c3d4e5-f6a7-8901-bcde-f12345678901"}}, "message": "Failover group sync initiated."}}}}, "Failover_Service_API_SaveMultiRegionFailoverResponse": {"description": "Multi-region failover enable initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Multi-region failover enable has been initiated.", "description": "Confirmation message that multi-region failover enable has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/a1b2c3d4-e5f6-7890-abcd-ef1234567890/multi-region-failover"}}, "message": "Multi-region failover enable has been initiated."}}}}, "Failover_Service_API_DeleteMultiRegionFailoverResponse": {"description": "Multi-region failover disable initiated", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Failover_Service_API_Message"}, {"type": "object", "properties": {"message": {"type": "string", "const": "Multi-region failover disable has been initiated.", "description": "Confirmation message that multi-region failover disable has been initiated."}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/a1b2c3d4-e5f6-7890-abcd-ef1234567890/multi-region-failover"}}, "message": "Multi-region failover disable has been initiated."}}}}, "Failover_Service_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Failover_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Tag_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Tag_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Tag_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Tag_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Tag_API_TagCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Tag_API_HalCollection"}, {"$ref": "#/components/schemas/Tag_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Tag_API_FilteredCollection"}, {"$ref": "#/components/schemas/Tag_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Tag"}, {"$ref": "#/components/schemas/Tag_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"tag_response": {"summary": "Tag collection with pagination", "value": {"_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2&offset=2"}, "limit": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?offset=2{&limit}", "templated": true}, "offset": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2{&offset}", "templated": true}, "filter": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2&offset=2{&filter}", "templated": true}, "sort": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2&offset=2{&sort}", "templated": true}, "prev": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?limit=2&offset=0"}, "next": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags?offset=4&limit=2"}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"name": "tag-1", "color": "#ffffff", "_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-1"}}}, {"name": "tag-2", "color": "#000000", "_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-2"}}}]}}}}}}}, "Tag_API_Tag": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Tag_API_Tag"}, {"$ref": "#/components/schemas/Tag_API_HalItem"}]}, "example": {"name": "tag-1", "color": "#ffffff", "_links": {"self": {"href": "https://cloud.acquia.com/api-framework/demo-php/api/tags/tag-1"}}}}}, "links": {"self": {"operationId": "findTagByTagName", "parameters": {"tagName": "$request.path.tagName"}}}}, "Tag_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Tag_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Tag_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Environment_Service_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Environment_Service_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Environment_Service_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Environment_Service_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Environment_Service_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Environment_Service_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Environment_Service_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}, "Environment_Service_API_DeploymentCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Deployment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"deployment_response": {"summary": "Deployment collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=2"}, "limit": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?offset=2{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=2{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=2{&sort}", "templated": true}, "prev": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=0"}, "next": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/deployments?limit=2&offset=4"}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"id": "e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "status": "done", "code_reference": "tags/v1.0.0", "run_hooks": true, "hooks_argument": null, "sender_id": null, "created_at": "2025-04-01T13:01:06.603Z", "started_at": "2025-04-01T13:01:10.123Z", "completed_at": "2025-04-01T13:05:00.000Z", "_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}, "environment": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}}, {"id": "f1dae0f8-67c7-5d1e-cbe1-1f7604f77de4", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "status": "failed", "code_reference": "tags/v0.9.0", "run_hooks": false, "hooks_argument": null, "sender_id": null, "created_at": "2025-03-28T09:15:00.000Z", "started_at": "2025-03-28T09:15:05.000Z", "completed_at": "2025-03-28T09:18:00.000Z", "_links": {"self": {"href": "https://api.acquia.com/v3/deployments/f1dae0f8-67c7-5d1e-cbe1-1f7604f77de4"}, "environment": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}}]}}}}}}}, "Environment_Service_API_Deployment": {"description": "Deployment details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Deployment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"id": "e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "status": "started", "code_reference": "tags/v1.0.0", "run_hooks": true, "hooks_argument": "--skip-db-update", "created_at": "2025-04-01T13:01:06.603Z", "started_at": "2025-04-01T13:01:10.123Z", "completed_at": null, "sender_id": null, "logs": null, "_links": {"self": {"href": "https://api.acquia.com/v3/deployments/e0c9dff7-56b6-4c0d-bad0-0e6593f66cd3"}, "environment": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323"}}}}}, "links": {"self": {"operationId": "findDeploymentByDeploymentId", "parameters": {"deploymentId": "$request.path.deploymentId"}}}}, "Environment_Service_API_CodeDeploy": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_CodeDeploy"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"concurrency": 5, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/d3f7270e-c45f-4801-9308-5e8afe84a323/code-deploy"}}}}}, "links": {"self": {"operationId": "findCodeDeployByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_Environment": {"description": "Environment details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Environment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"codebase": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_EmbeddedCodebase"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}}}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}, "codebase": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "name": "environment_3e8ecbec-ea7c-4260-8414-ef2938c859bc", "label": "Environment_3e8ecbec-ea7c-4260-8414-ef2938c859bc", "description": "Description of 3e8ecbec-ea7c-4260-8414-ef2938c859bc", "status": "normal", "flags": {"production": false, "protection_mode": false}, "properties": {"version": "8.3", "max_execution_time": 10, "memory_limit": 192, "apcu": 32, "client_max_body_size": 192, "max_input_vars": 1000, "max_post_size": 256, "memcached_limit": 128, "upload_max_filesize": 192, "operating_system": "focal"}, "reference": "tag/v3.1", "code_switch_status": "IDLE", "ssh_url": "ssh://site.dev@sitedev.ssh.hosted.acquia-sites.com", "_embedded": {"codebase": {"id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "_links": {"self": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323"}}}}}}}, "links": {"self": {"operationId": "findEnvironmentByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_EnvironmentCollection": {"description": "Environment collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Environment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/sites/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/sites/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/sites/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2{&offset}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "name": "dev", "label": "Dev", "description": "Development environment", "status": "normal", "reference": "branch/main", "code_switch_status": "IDLE", "ssh_url": "ssh://site.dev@sitedev.ssh.hosted.acquia-sites.com", "flags": {"production": false, "protection_mode": false}, "properties": {"version": "8.3"}, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}}]}}}}}, "Environment_Service_API_FilterableEnvironmentCollection": {"description": "Environment collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_FilteredCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Environment"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/codebases/d3f7270e-c45f-4801-9308-5e8afe84a323/environments?limit=2&offset=0{&filter}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "name": "dev", "label": "Dev", "description": "Development environment", "status": "normal", "reference": "branch/main", "code_switch_status": "IDLE", "ssh_url": "ssh://site.dev@sitedev.ssh.hosted.acquia-sites.com", "flags": {"production": false, "protection_mode": false}, "properties": {"version": "8.3"}, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}}]}}}}}, "Environment_Service_API_SiteInstance": {"description": "Site Instance details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_SiteInstance"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323"}}, "site_id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "status": "active", "health_status": {"code": "OK", "summary": "The health status is OK.", "details": "The site instance is active"}, "domains": ["example.com", "example-2.com"], "protection_mode": {"is_enabled": true, "is_inherited": true}}}}, "links": {"self": {"operationId": "findSiteInstanceBySiteIdAndEnvironmentId", "parameters": {"siteId": "$request.path.siteId", "environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_Domain": {"description": "Domain details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Domain"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"name": "example.com", "is_managed": false, "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com"}}}}}, "links": {"self": {"operationId": "findDomainBySiteIdAndEnvironmentIdAndDomainName", "parameters": {"siteId": "$request.path.siteId", "environmentId": "$request.path.environmentId", "domainName": "$request.path.domainName"}}}}, "Environment_Service_API_DomainCollection": {"description": "Domain collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Domain"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains?limit=2&offset=0{&sort}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"name": "example.com", "is_managed": false, "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com"}}}]}}}}}, "Environment_Service_API_DomainStatus": {"description": "Domain DNS status details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DomainStatus"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"hostname": "example.com", "site_id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc", "environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323", "ip_addresses": ["203.0.113.10"], "cnames": [], "flags": {"default": false, "active": true, "dns_resolves": true, "acquia_hosted": true}, "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/domains/example.com/status"}}}}}}, "Environment_Service_API_Database": {"description": "Database details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_Database"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"database_name": "site_dev", "database_role": "site_dev_user", "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database"}}}}}, "links": {"self": {"operationId": "findDatabaseBySiteIdAndEnvironmentId", "parameters": {"siteId": "$request.path.siteId", "environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_DatabaseConnection": {"description": "Database connection credential details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DatabaseConnection"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"db_host": "db.example.com", "name": "site_dev", "password": "s3cr3t", "user_name": "site_dev_user", "ssh_host": "site.dev.ssh.hosted.acquia-sites.com", "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/connection"}}}}}}, "Environment_Service_API_DatabaseBackup": {"description": "Database backup details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DatabaseBackup"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "database_id": "b2c3d4e5-f6a7-8901-bcde-f01234567891", "created_at": "2025-04-01T02:00:00.000Z", "type": "DAILY", "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}, "download": {"href": "https://s3.amazonaws.com/acquia-backups/backup-a1b2c3d4.sql.gz?X-Amz-Expires=3600&X-Amz-Signature=abc123"}}}}}, "links": {"self": {"operationId": "findDatabaseBackupBySiteIdAndEnvironmentIdAndBackupId", "parameters": {"siteId": "$request.path.siteId", "environmentId": "$request.path.environmentId", "backupId": "$request.path.backupId"}}}}, "Environment_Service_API_DatabaseBackupCollection": {"description": "Database backup collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_FilteredCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DatabaseBackup"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups?limit=2&offset=0{&sort}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 2, "offset": 0}, "_embedded": {"items": [{"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "database_id": "b2c3d4e5-f6a7-8901-bcde-f01234567891", "created_at": "2025-04-01T02:00:00.000Z", "type": "DAILY", "_links": {"self": {"href": "https://api.acquia.com/v3/site-instances/3e8ecbec-ea7c-4260-8414-ef2938c859bc.d3f7270e-c45f-4801-9308-5e8afe84a323/database/backups/a1b2c3d4-e5f6-7890-abcd-ef1234567890"}}}]}}}}}, "Environment_Service_API_EgressIpCollection": {"description": "Egress IP collection", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_EgressIp"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "example": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/eips?limit=25&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/eips?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/eips?limit=25{&offset}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 25, "offset": 0}, "_embedded": {"items": [{"id": "eip-a1b2c3d4-e5f6-7890-abcd-ef1234567890", "status": "active", "ipv4": "203.0.113.10", "ipv6": null, "flags": {"is_primary": true}}]}}}}}, "Environment_Service_API_TrustedProxies": {"description": "Trusted proxy configuration details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_TrustedProxies"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"cidrs_ipv4": ["203.0.113.0/24"], "cidrs_ipv6": [], "associated_cdns": {"cloudflare": {"label": "Cloudflare", "is_enabled": true}}, "_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/trusted-proxies"}}}}}, "links": {"self": {"operationId": "findTrustedProxiesByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_PrivateNetwork": {"description": "Private network details", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_PrivateNetwork"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"id": "pn-a1b2c3d4-e5f6-7890-abcd-ef1234567890", "label": "Production VPC", "_links": {"self": {"href": "https://api.acquia.com/v3/environments/3e8ecbec-ea7c-4260-8414-ef2938c859bc/private-network"}}}}}, "links": {"self": {"operationId": "findPrivateNetworkByEnvironmentId", "parameters": {"environmentId": "$request.path.environmentId"}}}}, "Environment_Service_API_DomainPattern": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DomainPattern"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}, "example": {"id": "11111111-1111-1111-1111-111111111111", "pattern": "[site-name].acme.com", "_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}}}}, "links": {"self": {"operationId": "findDomainPatternByEnvironmentIdAndPatternId", "parameters": {"environmentId": "$request.path.environmentId", "patternId": "$request.path.patternId"}}}}, "Environment_Service_API_DomainPatternCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_HalCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Environment_Service_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Environment_Service_API_DomainPattern"}, {"$ref": "#/components/schemas/Environment_Service_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"domain_pattern_collection": {"summary": "Domain pattern collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns"}, "limit": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?limit=25{&offset}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?limit=25&offset=0{&sort}", "templated": true}}, "count": 1, "total": 1, "pagination": {"total": 1, "limit": 25, "offset": 0}, "_embedded": {"items": [{"id": "11111111-1111-1111-1111-111111111111", "pattern": "[site-name].acme.com", "_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns/11111111-1111-1111-1111-111111111111"}}}]}}}, "domain_pattern_collection_empty": {"summary": "Empty domain pattern collection", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns"}, "limit": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?limit=25{&offset}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/environments/11111111-1111-1111-1111-111111111111/domain-patterns?limit=25&offset=0{&sort}", "templated": true}}, "count": 0, "total": 0, "pagination": {"total": 0, "limit": 25, "offset": 0}, "_embedded": {"items": []}}}}}}}, "Federated_Authentication_API_IdentityProvider": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_IdentityProvider"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}, "example": {"identity_provider_id": "908914ec-2354-4fb1-9298-637247eccc3a", "label": "Acme Corporation Azure AD", "subscription_id": "sub-123", "idp_entity_id": "https://idp.acme.com/saml", "sp_entity_id": "https://sp.acme.com/saml", "sso_url": "https://acme.com/sso", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----", "created_at": "2026-04-15T11:00:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/908914ec-2354-4fb1-9298-637247eccc3a"}, "sso_policy": {"href": "https://api.acquia.com/v3/identity-providers/908914ec-2354-4fb1-9298-637247eccc3a/policies/sso"}}}}}, "links": {"self": {"operationId": "findIdentityProviderByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}, "update": {"operationId": "updateIdentityProviderByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}, "delete": {"operationId": "deleteIdentityProviderByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}, "enable_sso_policy": {"operationId": "enableIdentityProviderSSOPolicyByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}, "disable_sso_policy": {"operationId": "disableIdentityProviderSSOPolicyByIdentityProviderId", "parameters": {"identityProviderId": "$response.body#/identity_provider_id"}}}}, "Federated_Authentication_API_IdentityProviderCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_FilteredCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_IdentityProvider"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"identity_provider_response": {"summary": "Identity provider collection with pagination", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2&offset=2"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?offset=2{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2&offset=2{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2&offset=2{&sort}", "templated": true}, "prev": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?limit=2&offset=0"}, "next": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/identity-providers?offset=4&limit=2"}}, "count": 2, "total": 6, "pagination": {"total": 6, "limit": 2, "offset": 2}, "_embedded": {"items": [{"identity_provider_id": "908914ec-2354-4fb1-9298-637247eccc3a", "label": "Acme Corporation Azure AD", "subscription_id": "sub-123", "idp_entity_id": "https://idp.acme.com/saml", "sp_entity_id": "https://sp.acme.com/saml", "sso_url": "https://acme.com/sso", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----", "created_at": "2026-04-15T11:00:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/908914ec-2354-4fb1-9298-637247eccc3a"}, "sso_policy": {"href": "https://api.acquia.com/v3/identity-providers/908914ec-2354-4fb1-9298-637247eccc3a/policies/sso"}}}, {"identity_provider_id": "123456ec-2354-4fb1-9298-637247eccc3b", "label": "Acme Research Ping Identity", "subscription_id": "sub-123", "idp_entity_id": "https://idp-research.acme.com/saml", "sp_entity_id": "https://sp-research.acme.com/saml", "sso_url": "https://research.acme.com/sso", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----", "created_at": "2026-04-20T14:20:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/identity-providers/123456ec-2354-4fb1-9298-637247eccc3b"}, "sso_policy": {"href": "https://api.acquia.com/v3/identity-providers/123456ec-2354-4fb1-9298-637247eccc3b/policies/sso"}}}]}}}}}}}, "Federated_Authentication_API_SsoDomain": {"description": "OK. The `_links` object always contains `self`. Additional links are state-conditional: `verify` is present when `health.code` is `202` or `404` (POST it to initiate or retry DNS TXT record verification); `identity_providers` is present when the domain is referenced by one or more Identity Provider policies (follows to a filtered list of those IdPs; when present the domain cannot be deleted \u2014 remove it from all policies first).", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_SsoDomain"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}, "examples": {"pending_verification": {"summary": "Domain awaiting DNS verification", "description": "A newly created domain whose DNS TXT record has not yet been confirmed. `health.code` is `202`; the `verify` link is present so the client can trigger or retry the check. `identity_providers` is absent because no policy can reference an unverified domain.", "value": {"domain_id": "dom-789", "domain": "acme.corp", "subscription_id": "sub-123", "health": {"code": "202", "summary": "Verification pending", "details": "Acquia is waiting to confirm the DNS TXT record. Ensure the record has been published and allow time for DNS propagation, then retry verification."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.corp", "value": "xyz789abc123", "health": {"code": "202", "summary": "Check in progress", "details": "The TXT record check has not yet completed."}}, "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-789"}, "verify": {"href": "https://api.acquia.com/v3/sso-domains/dom-789/actions/verify"}}}}, "failed_verification": {"summary": "Domain verification failed \u2014 DNS record not found", "description": "A domain whose TXT record could not be found. `health.code` is `404`; `details` names the exact record to check. The `verify` link is present so the client can retry after fixing the DNS entry.", "value": {"domain_id": "dom-789", "domain": "acme.corp", "subscription_id": "sub-123", "health": {"code": "404", "summary": "Missing DNS record", "details": "Acquia could not verify the presence of the required TXT DNS record at _acquia-challenge.acme.corp. Ensure the record is published with the correct value and retry verification."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.corp", "value": "xyz789abc123", "health": {"code": "404", "summary": "Missing DNS record", "details": "The TXT record at _acquia-challenge.acme.corp was not found or does not match the expected value xyz789abc123."}}, "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-789"}, "verify": {"href": "https://api.acquia.com/v3/sso-domains/dom-789/actions/verify"}}}}, "verified_in_use": {"summary": "Verified domain referenced by an Identity Provider policy", "description": "A verified domain enforced by at least one Identity Provider policy. `health.code` is `200`; `verify` is absent; `identity_providers` is present. A DELETE on this domain will return 409 until the domain is removed from all policies.", "value": {"domain_id": "dom-456", "domain": "acme.com", "subscription_id": "sub-123", "health": {"code": "200", "summary": "Verified", "details": "The DNS TXT record has been confirmed and the domain is verified."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.com", "value": "abc123def456", "health": {"code": "200", "summary": "Verified", "details": "The TXT record at _acquia-challenge.acme.com matches the expected value."}}, "verified_at": "2026-04-15T10:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}, "identity_providers": {"href": "https://api.acquia.com/v3/identity-providers?filter=domain_id%3Ddom-456"}}}}}}}, "links": {"self": {"operationId": "findSsoDomainBySsoDomainId", "parameters": {"domainId": "$response.body#/domain_id"}}, "delete": {"operationId": "deleteSsoDomainBySsoDomainId", "parameters": {"domainId": "$response.body#/domain_id"}}, "verify": {"operationId": "verifySsoDomainBySsoDomainId", "parameters": {"domainId": "$response.body#/domain_id"}}}}, "Federated_Authentication_API_SsoDomainCollection": {"description": "OK", "content": {"application/hal+json": {"schema": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_HalCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_PaginatedCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_FilteredCollection"}, {"$ref": "#/components/schemas/Federated_Authentication_API_SortedCollection"}, {"type": "object", "properties": {"_embedded": {"type": "object", "properties": {"items": {"type": "array", "items": {"allOf": [{"$ref": "#/components/schemas/Federated_Authentication_API_SsoDomain"}, {"$ref": "#/components/schemas/Federated_Authentication_API_HalItem"}]}}}, "required": ["items"]}}, "required": ["_embedded"]}]}, "examples": {"domain_response": {"summary": "Domain collection with pagination", "description": "Two domains in different states: one verified and in use by a policy (carries `identity_providers` link), one pending verification (carries `verify` link).", "value": {"_links": {"self": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?limit=2&offset=0"}, "limit": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?offset=0{&limit}", "templated": true}, "offset": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?limit=2{&offset}", "templated": true}, "filter": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?limit=2&offset=0{&filter}", "templated": true}, "sort": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?limit=2&offset=0{&sort}", "templated": true}, "next": {"href": "https://api.acquia.com/v3/subscriptions/sub-123/sso-domains?offset=2&limit=2"}}, "count": 2, "total": 3, "pagination": {"total": 3, "limit": 2, "offset": 0}, "_embedded": {"items": [{"domain_id": "dom-456", "domain": "acme.com", "subscription_id": "sub-123", "health": {"code": "200", "summary": "Verified", "details": "The DNS TXT record has been confirmed and the domain is verified."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.com", "value": "abc123def456", "health": {"code": "200", "summary": "Verified", "details": "The TXT record at _acquia-challenge.acme.com matches the expected value."}}, "verified_at": "2026-04-15T10:30:00Z", "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-456"}, "identity_providers": {"href": "https://api.acquia.com/v3/identity-providers?filter=domain_id%3Ddom-456"}}}, {"domain_id": "dom-789", "domain": "acme.corp", "subscription_id": "sub-123", "health": {"code": "202", "summary": "Verification pending", "details": "Acquia is waiting to confirm the DNS TXT record. Ensure the record has been published and allow time for DNS propagation, then retry verification."}, "verification_record": {"type": "TXT", "host": "_acquia-challenge.acme.corp", "value": "xyz789abc123", "health": {"code": "202", "summary": "Check in progress", "details": "The TXT record check has not yet completed."}}, "_links": {"self": {"href": "https://api.acquia.com/v3/sso-domains/dom-789"}, "verify": {"href": "https://api.acquia.com/v3/sso-domains/dom-789/actions/verify"}}}]}}}}}}}, "Federated_Authentication_API_ValidationError": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_ValidationError"}, "example": {"error": "validation_failed", "message": {"field_name": "This field is required.", "another_field": "This field must be a valid format."}}}}}, "Federated_Authentication_API_UnauthorizedError": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_UnauthorizedError"}, "example": {"error": "unauthorized", "message": "You do not have permission to access this resource."}}}}, "Federated_Authentication_API_ForbiddenError": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_ForbiddenError"}, "example": {"error": "forbidden", "message": "You do not have permission to perform this action."}}}}, "Federated_Authentication_API_NotFoundError": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_NotFoundError"}, "example": {"error": "not_found", "message": "The resource you are trying to access does not exist, or you do not have access to it."}}}}, "Federated_Authentication_API_InternalServerError": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_InternalServerError"}, "example": {"error": "system", "message": "An unknown error occurred. Please try your request again. If the problem persists, contact Acquia Support. Request ID: abc123-def456-ghi789."}}}}, "Federated_Authentication_API_InvalidOperationError": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Federated_Authentication_API_InvalidOperationError"}, "example": {"error": "conflict", "message": "The requested operation is invalid or cannot be completed."}}}}}, "requestBodies": {"Codebase_Service_API_CreateCodebaseRequest": {"description": "Codebase creation request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"codebase_id": {"type": "string", "format": "uuid", "description": "Client-supplied UUID for the new codebase"}, "label": {"type": "string", "description": "Human-readable label for the codebase"}, "region": {"type": "string", "description": "AWS region where the codebase will be created"}}, "required": ["codebase_id", "label", "region"], "additionalProperties": false}, "examples": {"create": {"summary": "Create a codebase", "description": "Creates a new codebase for a subscription", "value": {"codebase_id": "a0c9dff7-56b6-4c0d-bad0-0e6593f66cd4", "label": "my-codebase", "region": "us-east-1"}}}}}}, "Codebase_Service_API_CreateDomainPatternRequest": {"description": "Create domain pattern request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])(?=.*\\[environment-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The domain pattern to apply to all associated sites in this codebase, optionally followed by a single path segment. Both [site-name] and [environment-name] tokens are mandatory. Domain \u2264 200 chars excluding token placeholders; optional path max 255 chars matching ^/[A-Za-z0-9._-]+$. Additional semantic rules (no IPs, no forbidden suffixes, no wildcards, one pattern per codebase) are enforced at the service layer.\n"}}, "required": ["pattern"], "additionalProperties": false}, "examples": {"create_domain_pattern": {"summary": "Create a domain pattern", "value": {"pattern": "[site-name].[environment-name].acme.com"}}}}}}, "Codebase_Service_API_UpdateCodebaseRequest": {"description": "Codebase update request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"label": {"type": "string", "description": "Human-readable label for the codebase"}, "description": {"type": "string", "description": "Description of the codebase"}}, "minProperties": 1, "additionalProperties": false}, "examples": {"update": {"summary": "Update a codebase", "description": "Updates an existing codebase's label and description", "value": {"label": "updated-codebase-label", "description": "Updated codebase description"}}}}}}, "Codebase_Service_API_UpdateDomainPatternRequest": {"description": "Update domain pattern request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])(?=.*\\[environment-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The updated domain pattern to apply to all associated sites in this codebase, optionally followed by a single path segment. Both [site-name] and [environment-name] tokens are mandatory. Domain \u2264 200 chars excluding token placeholders; optional path max 255 chars matching ^/[A-Za-z0-9._-]+$. Additional semantic rules (no IPs, no forbidden suffixes, no wildcards, one pattern per codebase) are enforced at the service layer.\n"}}, "required": ["pattern"], "additionalProperties": false, "minProperties": 1}, "examples": {"update_domain_pattern": {"summary": "Update a domain pattern", "value": {"pattern": "[site-name].[environment-name].acme.com"}}}}}}, "Site_Service_API_DuplicateSiteRequest": {"description": "Site duplication request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"environment_mapping": {"type": "array", "items": {"type": "string", "pattern": "^[a-zA-Z0-9-]+:[a-zA-Z0-9-]+$", "description": "Environment mapping in the format 'sourceEnvId:targetEnvId'"}, "description": "Array of environment mappings. You must provide exactly one environment mapping. Each entry maps a source environment ID to a target environment ID, separated by a colon.\n", "minItems": 1, "maxItems": 1, "example": ["0ebce493-9d09-479d-a9a8-138a206fa687:a1b2c3d4-e5f6-7890-abcd-ef1234567890"]}, "site_name": {"type": "string", "description": "Machine name for the duplicated site. Must start with a lowercase letter and contain only lowercase letters and numbers. Maximum 14 characters.\n", "minLength": 1, "maxLength": 14, "pattern": "^[a-z][a-z0-9]*$", "example": "dupsite"}, "site_label": {"type": "string", "description": "Human-readable label for the duplicated site. Must only contain letters, numbers, and spaces. Maximum 50 characters.\n", "minLength": 1, "maxLength": 50, "example": "Duplicated Site"}, "site_id": {"type": "string", "format": "uuid", "description": "An optional explicit UUID for the new duplicated site. A UUID is generated automatically if omitted.", "example": "f1a2b3c4-d5e6-7890-abcd-ef1234567890"}, "hook_argument": {"type": "string", "description": "Optional hook argument to pass to the duplication process.", "example": "--verbose"}}, "required": ["environment_mapping", "site_name", "site_label"], "additionalProperties": false}, "examples": {"duplicate_basic": {"summary": "Duplicate a site with required fields", "description": "Duplicates a site with a single environment mapping", "value": {"environment_mapping": ["0ebce493-9d09-479d-a9a8-138a206fa687:a1b2c3d4-e5f6-7890-abcd-ef1234567890"], "site_name": "dupsite", "site_label": "Duplicated Site"}}, "duplicate_with_options": {"summary": "Duplicate a site with all options", "description": "Duplicates a site specifying a custom site ID and hook argument", "value": {"environment_mapping": ["0ebce493-9d09-479d-a9a8-138a206fa687:a1b2c3d4-e5f6-7890-abcd-ef1234567890"], "site_name": "duphook", "site_label": "Dup With Hook", "site_id": "f1a2b3c4-d5e6-7890-abcd-ef1234567890", "hook_argument": "my-hook-arg"}}}}}}, "Site_Service_API_CreateSiteRequest": {"description": "Site creation request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The machine name of the site. Must start with a lowercase letter and contain only lowercase letters and numbers.", "minLength": 1, "maxLength": 14, "pattern": "^[a-z][a-z0-9]*$", "example": "mysite"}, "label": {"type": "string", "description": "The human-readable label for the site.", "minLength": 1, "maxLength": 50, "example": "My Site"}, "codebase_id": {"type": "string", "description": "The unique identifier of the codebase to associate with this site.", "pattern": "^[a-zA-Z0-9-]+$", "example": "a9b8c7d6-e5f4-3210-abcd-ef9876543210"}, "site_id": {"type": "string", "format": "uuid", "description": "An optional explicit UUID for the new site. A UUID is generated automatically if omitted.", "example": "0ebce493-9d09-479d-a9a8-138a206fa687"}, "description": {"type": "string", "description": "An optional description for the site.", "maxLength": 512, "example": "A production site for the marketing team."}}, "required": ["name", "label", "codebase_id"], "additionalProperties": false}, "examples": {"create_site_full": {"summary": "Create a new site with all fields", "value": {"name": "mysite", "label": "My Site", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210", "site_id": "0ebce493-9d09-479d-a9a8-138a206fa687", "description": "This is a description of my site."}}, "create_site_minimal": {"summary": "Create a new site with required fields only", "value": {"name": "newsitename", "label": "New Site Label", "codebase_id": "a9b8c7d6-e5f4-3210-abcd-ef9876543210"}}}}}}, "Site_Service_API_UpdateSiteRequest": {"description": "Site update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"label": {"type": "string", "description": "The new human-readable label for the site.", "minLength": 1, "maxLength": 50, "example": "My Updated Site"}, "description": {"type": "string", "description": "The new description for the site.", "maxLength": 512, "example": "Updated description for this site."}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update_label": {"summary": "Update site label", "value": {"label": "My Updated Site"}}, "update_description": {"summary": "Update site description", "value": {"description": "Updated description for this site."}}, "update_both": {"summary": "Update label and description", "value": {"label": "My Updated Site", "description": "Updated description for this site."}}}}}}, "CDN_API_ProvisionCdnForDomainRequest": {"description": "Domain CDN provisioning request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"environment_id": {"type": "string", "pattern": "^[a-zA-Z0-9-]+$", "description": "The environment identifier that the domain will be associated with for purging purposes."}}, "additionalProperties": false, "required": ["environment_id"], "minProperties": 1}, "example": {"environment_id": "0c3f0f5f-5727-4838-9459-2d90ee1cf7c1"}}}}, "CDN_API_CreatePurgeRequest": {"description": "Purge request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"resource_type": {"type": "string", "description": "The type of resource to purge.", "enum": ["tags", "urls", "domains", "everything"]}, "values": {"type": "array", "description": "List of values to purge based on the resource type.\nRequired when `resource_type` is not `everything`.\n", "items": {"type": "string"}, "minItems": 1}}, "additionalProperties": false, "required": ["resource_type"], "minProperties": 1}, "examples": {"purge_urls": {"summary": "Purge specific URLs", "value": {"resource_type": "urls", "values": ["https://example.com/page1", "https://example.com/page2"]}}, "purge_tags": {"summary": "Purge by cache tags", "value": {"resource_type": "tags", "values": ["product-123", "category-456"]}}, "purge_domains": {"summary": "Purge entire domains", "value": {"resource_type": "domains", "values": ["example.com", "test.example.org"]}}, "purge_everything": {"summary": "Purge everything", "value": {"resource_type": "everything"}}}}}}, "CDN_API_UpdateSecurityRuleSetRequest": {"description": "Security ruleset update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"is_enabled": {"type": "boolean", "description": "Indicates whether the security ruleset should be enabled."}}, "additionalProperties": false, "required": ["is_enabled"], "minProperties": 1}, "examples": {"enable": {"summary": "Enables a security ruleset", "value": {"is_enabled": true}}}}}}, "CDN_API_CreateIpRuleRequest": {"description": "IP rule create request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"ips": {"type": "array", "description": "The IPs or CIDR blocks to include in the rule.", "items": {"type": "string", "description": "An IP address or CIDR block."}}, "action": {"type": "string", "enum": ["block", "allow"], "description": "The action applied when the rule matches."}, "display_name": {"type": "string", "description": "The display name of the IP rule."}, "description": {"type": "string", "description": "The description of the IP rule."}}, "additionalProperties": false, "required": ["ips", "action", "display_name"]}, "examples": {"create": {"summary": "Creates an IP rule", "value": {"ips": ["192.0.2.10", "198.51.100.0/24"], "action": "block", "display_name": "Block office IPs", "description": "Blocks office IP ranges."}}}}}}, "CDN_API_UpdateIpRuleRequest": {"description": "IP rule update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the IP rule."}, "action": {"type": "string", "enum": ["block", "allow"], "description": "The action applied when the rule matches."}, "description": {"type": "string", "description": "The description of the IP rule."}, "ips": {"type": "array", "description": "The IPs or CIDR blocks associated with the rule.", "items": {"type": "string", "description": "An IP address or CIDR block."}}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update": {"summary": "Updates an IP rule", "value": {"display_name": "Allow support", "action": "allow", "ips": ["203.0.113.5"]}}}}}}, "CDN_API_CreateCustomRuleRequest": {"description": "Custom security rule create request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the custom security rule."}, "action": {"type": "string", "enum": ["block", "allow", "alert"], "description": "The action applied when the rule matches."}, "priority": {"type": "integer", "minimum": 1, "description": "The priority order for the rule."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "paths": {"type": "array", "description": "The paths the rule applies to.", "items": {"type": "string", "description": "A path pattern."}}}, "additionalProperties": false, "required": ["display_name", "action", "domains", "paths"], "minProperties": 1}, "examples": {"create": {"summary": "Creates a custom security rule", "value": {"display_name": "Block bad bots", "action": "block", "priority": 1, "domains": ["example.com"], "paths": ["/api/*"]}}}}}}, "CDN_API_CreateRateLimitingRuleRequest": {"description": "Rate limiting rule create request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the rate limiting rule."}, "action": {"type": "string", "enum": ["block", "alert"], "description": "The action applied when the rule matches."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "rate_limit_per_minute": {"type": "string", "enum": ["lenient", "moderate", "strict"], "description": "The rate limit category applied to the rule."}}, "additionalProperties": false, "required": ["display_name", "action", "rate_limit_per_minute"], "minProperties": 1}, "examples": {"create": {"summary": "Creates a rate limiting rule", "value": {"display_name": "Rate Rule 1", "action": "alert", "rate_limit_per_minute": "lenient", "domains": ["example.com"]}}}}}}, "CDN_API_UpdateRateLimitingRuleRequest": {"description": "Rate limiting rule update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the rate limiting rule."}, "action": {"type": "string", "enum": ["block", "alert"], "description": "The action applied when the rule matches."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "rate_limit_per_minute": {"type": "string", "enum": ["lenient", "moderate", "strict"], "description": "The rate limit category applied to the rule."}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update": {"summary": "Updates a rate limiting rule", "value": {"display_name": "Rate Rule 2", "action": "block", "rate_limit_per_minute": "strict", "domains": ["shop.example.com"]}}}}}}, "CDN_API_UpdateCustomRuleRequest": {"description": "Custom security rule update request body", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"display_name": {"type": "string", "description": "The display name of the custom security rule."}, "action": {"type": "string", "enum": ["block", "allow", "alert"], "description": "The action applied when the rule matches."}, "priority": {"type": "integer", "minimum": 1, "description": "The priority order for the rule."}, "domains": {"type": "array", "description": "The domains the rule applies to.", "items": {"type": "string", "description": "A domain name."}}, "paths": {"type": "array", "description": "The paths the rule applies to.", "items": {"type": "string", "description": "A path pattern."}}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update": {"summary": "Updates a custom security rule", "value": {"display_name": "Alert login scans", "action": "alert", "priority": 2, "domains": ["shop.example.com"], "paths": ["/login"]}}}}}}, "SSH_Key_Service_API_SshKeyRequestBody": {"required": true, "content": {"application/json": {"schema": {"type": "object", "required": ["label", "public_key"], "description": "Describes the request body for an SSH key.", "properties": {"label": {"type": "string", "description": "The SSH key label."}, "public_key": {"type": "string", "description": "The public key."}}, "additionalProperties": false, "minProperties": 1}, "example": {"label": "mykey", "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQChwPHzTTDKDpSbpa2+d22LcbQmsw92eLsUK3Fmei1fiGDkd34NsYCN8m7lsi3NbvdMS83CtPQPWiCveYPzFs1/hHc4PYj8opD2CNnr5iWVVbyaulCYHCgVv4aB/ojcexg8q483A4xJeF15TiCr/gu34rK6ucTvC/tn/rCwJBudczvEwt0klqYwv8Cl/ytaQboSuem5KgSjO3lMrb6CWtfSNhE43ZOw+UBFBqxIninN868vGMkIv9VY34Pwj54rPn/ItQd6Ef4B0KHHaGmzK0vfP+AK7FxNMoHnj3iYT33KZNqtDozdn5tYyH/bThPebEtgqUn+/w5l6wZIC/8zzvls/127ngHk+jNa0PlNyS2TxhPUK4NaPHIEnnrlp07JEYC4ImcBjaYCWAdcTcUkcJjwZQkN4bGmyO9cjICH98SdLD/HxqzTHeaYDbAX/Hu9HfaBb5dXLWsjw3Xc6hoVnUUZbMQyfgb0KgxDLh92eNGxJkpZiL0VDNOWCxDWsNpzwhLNkLqCvI6lyxiLaUzvJAk6dPaRhExmCbU1lDO2eR0FdSwC1TEhJOT9eDIK1r2hztZKs2oa5FNFfB/IFHVWasVFC9N2h/r/egB5zsRxC9MqBLRBq95NBxaRSFng6ML5WZSw41Qi4C/JWVm89rdj2WqScDHYyAdwyyppWU4T5c9Fmw== example@example.com"}}}}, "Failover_Service_API_CreateFailoverGroupRequest": {"description": "Create failover group request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"name": {"type": "string", "description": "The name of the failover group.", "example": "Primary Failover Group"}}, "required": ["name"], "additionalProperties": false}, "examples": {"create": {"summary": "Creates a new failover group", "description": "Creates a new failover group with the specified name", "value": {"name": "Primary Failover Group"}}}}}}, "Failover_Service_API_SaveMultiRegionFailoverRequest": {"description": "Multi-region failover enable request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"region": {"type": "string", "description": "The region to enable multi-region failover for.", "example": "us-east-1"}}, "required": ["region"], "additionalProperties": false, "minProperties": 1}, "examples": {"enable": {"summary": "Enables multi-region failover for a region", "description": "Enables multi-region failover for the specified region", "value": {"region": "us-east-1"}}}}}}, "Tag_API_SaveTagRequest": {"description": "Tag create/update request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"color": {"type": "string", "pattern": "^#((?:[a-f0-9]{3}){1,2})$", "description": "A color for the specified tag"}}, "additionalProperties": false, "minProperties": 1}, "examples": {"save": {"summary": "Saves a tag", "description": "Saves a tag with specified color", "value": {"color": "#000000"}}}}}}, "Environment_Service_API_StartDeploymentRequest": {"description": "Deployment start request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"run_hooks": {"type": "boolean", "description": "Whether to run deployment hooks."}, "code_reference": {"type": "string", "description": "The code reference (branch or tag) to deploy."}, "hooks_argument": {"type": "string", "description": "Additional arguments passed to deployment hooks."}}, "required": ["run_hooks", "code_reference"], "additionalProperties": false, "minProperties": 1}, "examples": {"start_deployment": {"summary": "Start a deployment", "description": "Starts a deployment for the specified environment.", "value": {"run_hooks": true, "code_reference": "release-2025-01-15", "hooks_argument": "--migrate --clear-cache"}}}}}}, "Environment_Service_API_UpdateCodeDeployRequest": {"description": "Code deploy concurrency update request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"concurrency": {"type": "integer", "minimum": 1, "maximum": 100, "description": "Maximum number of concurrent code deploys allowed for the environment."}}, "required": ["concurrency"], "additionalProperties": false, "minProperties": 1}, "examples": {"update_concurrency": {"summary": "Update code deploy concurrency", "description": "Sets the maximum concurrent code deploys for the environment.", "value": {"concurrency": 10}}}}}}, "Environment_Service_API_ReorderSiteInstancesRequest": {"description": "Site instances reorder request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"site_instance_ids": {"type": "array", "description": "List of site instance IDs in the desired priority order.", "items": {"type": "string", "description": "Site instance identifier in the format {siteId}.{environmentId} (dot-separated site and environment UUIDs)."}}}, "required": ["site_instance_ids"], "additionalProperties": false, "minProperties": 1}, "examples": {"reorder": {"summary": "Reorder site instances", "description": "Provides the desired order of site instance IDs for the environment.", "value": {"site_instance_ids": ["3e8ecbec-ea7c-4260-8414-ef2938c859bc.a0c9dff7-56b6-4c0d-bad0-0e6593f66cd3", "b1d8e2f8-67c7-5d1e-cbe1-1f7604f77de4.c2e9f3a9-78d8-6e2f-dcf2-2a8715a88ef5", "d3fa04ba-89e9-4f3a-edf3-3b9826b99fa6.e4ab15cb-90fa-4a4b-fea4-4c0937c00ab7"]}}}}}}, "Environment_Service_API_UpdateEnvironmentRequest": {"description": "Update environment request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"label": {"type": "string", "minLength": 1, "maxLength": 128, "description": "Human-readable label for the environment."}, "description": {"type": "string", "minLength": 1, "maxLength": 512, "description": "Description for the environment."}, "properties": {"type": "object", "description": "PHP and server configuration properties for the environment.", "properties": {"version": {"type": "string", "description": "PHP version (e.g. \"8.3\")."}, "apcu": {"type": "integer", "description": "APCu memory limit in MB."}, "max_execution_time": {"type": "integer", "description": "PHP max execution time in seconds."}, "memory_limit": {"type": "integer", "description": "PHP memory limit in MB."}, "opcache": {"type": "integer", "description": "OPcache memory limit in MB."}, "interned_strings_buffer": {"type": "integer", "description": "OPcache interned strings buffer in MB."}, "client_max_body_size": {"type": "integer", "description": "Nginx client_max_body_size in MB."}, "upload_max_filesize": {"type": "integer", "description": "PHP upload_max_filesize in MB."}, "max_post_size": {"type": "integer", "description": "PHP post_max_size in MB."}, "max_input_vars": {"type": "integer", "description": "PHP max_input_vars."}, "memcached_limit": {"type": "integer", "description": "Memcached memory limit in MB."}, "operating_system": {"type": "string", "description": "Operating system (e.g. \"focal\")."}, "sendmail_path": {"type": "string", "description": "Sendmail path configuration."}}}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update_label": {"summary": "Update environment label", "value": {"label": "Staging", "description": "Staging environment"}}, "update_properties": {"summary": "Update PHP properties", "value": {"properties": {"version": "8.3", "memory_limit": 256}}}}}}}, "Environment_Service_API_ClearCachesRequest": {"description": "Clear caches request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"domains": {"type": "array", "description": "List of domain names to clear caches for.", "minItems": 1, "items": {"type": "string", "description": "A domain name."}}}, "required": ["domains"], "additionalProperties": false}, "examples": {"clear_caches": {"summary": "Clear caches for specific domains", "value": {"domains": ["example.com", "www.example.com"]}}}}}}, "Environment_Service_API_CreateSiteInstanceRequest": {"description": "Create site instance request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"site_id": {"type": "string", "description": "The UUID of the site to associate with this environment."}, "source_environment_id": {"type": "string", "description": "The UUID of the environment to copy files and database from during creation."}, "source_site_id": {"type": "string", "description": "The UUID of the source site to copy files from during creation."}, "hook_arguments": {"type": "string", "description": "Additional arguments to pass to deployment hooks during creation."}}, "required": ["site_id"], "additionalProperties": false}, "examples": {"create": {"summary": "Associate a site with an environment", "value": {"site_id": "3e8ecbec-ea7c-4260-8414-ef2938c859bc"}}}}}}, "Environment_Service_API_CopySiteInstanceFilesRequest": {"description": "Copy site instance files request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"source_environment_id": {"type": "string", "description": "The UUID of the environment to copy files from."}}, "required": ["source_environment_id"], "additionalProperties": false}, "examples": {"copy_files": {"summary": "Copy files from another environment", "value": {"source_environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323"}}}}}}, "Environment_Service_API_CopySiteInstanceDatabaseRequest": {"description": "Copy site instance database request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"source_environment_id": {"type": "string", "description": "The UUID of the environment to copy the database from."}}, "required": ["source_environment_id"], "additionalProperties": false}, "examples": {"copy_database": {"summary": "Copy database from another environment", "value": {"source_environment_id": "d3f7270e-c45f-4801-9308-5e8afe84a323"}}}}}}, "Environment_Service_API_AssociatePrivateNetworkRequest": {"description": "Associate private network request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"private_network_id": {"type": "string", "description": "The identifier of the private network to associate with this environment."}}, "required": ["private_network_id"], "additionalProperties": false, "minProperties": 1}, "examples": {"associate": {"summary": "Associate a private network", "value": {"private_network_id": "pn-a1b2c3d4-e5f6-7890-abcd-ef1234567890"}}}}}}, "Environment_Service_API_UpdateTrustedProxiesRequest": {"description": "Update trusted proxies request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"cidrs_ipv4": {"type": "array", "description": "List of trusted IPv4 CIDR blocks.", "items": {"type": "string", "description": "An IPv4 CIDR block (e.g. \"203.0.113.0/24\")."}}, "cidrs_ipv6": {"type": "array", "description": "List of trusted IPv6 CIDR blocks.", "items": {"type": "string", "description": "An IPv6 CIDR block (e.g. \"2001:db8::/32\")."}}, "associated_cdns": {"type": "array", "description": "List of CDN names to associate with this environment.", "items": {"type": "string", "enum": ["akamai", "cloudflare", "fastly"]}}}, "additionalProperties": false, "minProperties": 1}, "examples": {"update": {"summary": "Update trusted proxy configuration", "value": {"cidrs_ipv4": ["203.0.113.0/24"], "cidrs_ipv6": [], "associated_cdns": ["cloudflare"]}}}}}}, "Environment_Service_API_CreateDomainPatternRequest": {"description": "Create domain pattern request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The domain pattern to apply to all associated sites in this environment, optionally followed by a single path segment. The [site-name] token is mandatory; [environment-name] is optional. Domain \u2264 200 chars excluding token placeholders; optional path max 255 chars matching ^/[A-Za-z0-9._-]+$. Additional semantic rules (no IPs, no forbidden suffixes, no wildcards, one pattern per environment) are enforced at the service layer.\n", "example": "[site-name].acme.com"}}, "required": ["pattern"], "additionalProperties": false}, "examples": {"create_domain_pattern": {"summary": "Create a domain pattern", "value": {"pattern": "[site-name].acme.com"}}}}}}, "Environment_Service_API_UpdateDomainPatternRequest": {"description": "Update domain pattern request body", "content": {"application/json": {"schema": {"type": "object", "properties": {"pattern": {"type": "string", "maxLength": 455, "pattern": "^(?=.*\\[site-name\\])[\\[\\]a-zA-Z0-9.-]+(/[A-Za-z0-9._-]+)?$", "description": "The updated domain pattern to apply to all associated sites in this environment, optionally followed by a single path segment. The [site-name] token is mandatory. Domain \u2264 200 chars excluding token placeholders; optional path max 255 chars matching ^/[A-Za-z0-9._-]+$. Additional semantic rules (no IPs, no forbidden suffixes, no wildcards, one pattern per environment) are enforced at the service layer.\n"}}, "required": ["pattern"], "additionalProperties": false, "minProperties": 1}, "examples": {"update_domain_pattern": {"summary": "Update a domain pattern", "value": {"pattern": "[site-name].staging.acme.com"}}}}}}, "Federated_Authentication_API_CreateSsoDomain": {"description": "Request body for creating a new domain.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"domain": {"type": "string", "pattern": "^[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?(\\.[a-zA-Z]{2,})+$", "description": "The domain name to create (e.g., \"acme.com\")."}}, "required": ["domain"], "additionalProperties": false}, "example": {"domain": "acme.com"}}}}, "Federated_Authentication_API_CreateIdentityProvider": {"description": "Request body for creating a new Identity Provider.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"idp_entity_id": {"type": "string", "format": "uri", "description": "The Identity Provider Entity ID."}, "label": {"type": "string", "description": "The name of the Identity Provider."}, "sso_url": {"type": "string", "format": "uri", "description": "The SSO URL for this IdP."}, "certificate": {"type": "string", "description": "The certificate for this IdP."}}, "required": ["label", "idp_entity_id", "sso_url", "certificate"], "additionalProperties": false}, "example": {"label": "Acme Corporation Azure AD", "idp_entity_id": "https://idp.acme.com/saml", "sso_url": "https://acme.com/sso", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----"}}}}, "Federated_Authentication_API_UpdateIdentityProvider": {"description": "Request body for updating an existing Identity Provider.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"label": {"type": "string", "description": "The name of the Identity Provider."}, "certificate": {"type": "string", "description": "The X.509 certificate used for SAML authentication."}, "sso_url": {"type": "string", "format": "uri", "description": "The Single Sign-On URL for the Identity Provider."}, "idp_entity_id": {"type": "string", "format": "uri", "description": "The Identity Provider Entity ID."}}, "additionalProperties": false, "minProperties": 1}, "example": {"label": "Updated Acme Corporation Azure AD", "certificate": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----", "sso_url": "https://updatedacme.com/sso", "idp_entity_id": "https://idp2.acme.com/saml"}}}}, "Federated_Authentication_API_CreateSsoPolicy": {"$ref": "#/components/requestBodies/Federated_Authentication_API_CreateSsoPolicyRequest"}, "Federated_Authentication_API_UpdateSsoPolicy": {"$ref": "#/components/requestBodies/Federated_Authentication_API_UpdateSsoPolicyRequest"}, "Federated_Authentication_API_UpdateSsoPolicyRequest": {"description": "Request body for updating an SSO policy for an Identity Provider.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"domain_ids": {"type": "array", "description": "List of verified domain IDs to enforce this Identity Provider for.", "items": {"type": "string", "description": "Reference to a verified SSO domain."}}}, "required": ["domain_ids"], "additionalProperties": false, "minProperties": 1}, "example": {"domain_ids": ["dom-456"]}}}}, "Federated_Authentication_API_CreateSsoPolicyRequest": {"description": "Request body for creating an SSO policy for an Identity Provider.", "required": true, "content": {"application/json": {"schema": {"type": "object", "properties": {"domain_ids": {"type": "array", "description": "List of verified domain IDs to enforce this Identity Provider for.", "items": {"type": "string", "description": "Reference to a verified SSO domain."}}}, "required": ["domain_ids"], "additionalProperties": false}, "example": {"domain_ids": ["dom-456", "dom-789"]}}}}}, "securitySchemes": {"Codebase_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Site_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "CDN_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "SSH_Key_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Failover_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Tag_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Environment_Service_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}, "Federated_Authentication_API_BearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "Use a valid JWT Bearer token in the Authorization header. Example: 'Bearer {token}'"}}}} \ No newline at end of file