diff --git a/content/operate/rc/api/api-reference/openapi.json b/content/operate/rc/api/api-reference/openapi.json index b456eec938..8b03093ae1 100644 --- a/content/operate/rc/api/api-reference/openapi.json +++ b/content/operate/rc/api/api-reference/openapi.json @@ -5464,6 +5464,79 @@ "description": "Service Unavailable - Server is temporarily unable to handle the request, please try again later. If this error persists, please contact customer support " } } + }, + "delete": { + "tags": [ + "Subscriptions - Pro - Connectivity" + ], + "summary": "Delete Private Link for a specific region", + "description": "(Active-Active subscriptions only) Deletes the Private Link configuration for a specific region.", + "operationId": "deleteActiveActivePrivateLink", + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "Subscription ID.", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "regionId", + "in": "path", + "description": "Region ID - required for Active-Active subscription", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + }, + "example": 1 + } + ], + "responses": { + "400": { + "description": "Bad Request - The server cannot process the request due to something that is perceived to be a client error" + }, + "412": { + "description": "Precondition Failed - Feature flag for this flow is off" + }, + "204": { + "description": "No Content", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TaskStateUpdate" + } + } + } + }, + "401": { + "description": "Unauthorized - Authentication failed for requested resource" + }, + "403": { + "description": "Forbidden - Not allowed to access requested resource (primarily due to client source IP API Key restrictions)" + }, + "404": { + "description": "Not Found - The resource you were trying to reach was not found or does not exist" + }, + "408": { + "description": "Request Timeout - The server didn't receive a complete request message within the server's allotted timeout period" + }, + "409": { + "description": "Conflict - request could not be processed because of a conflict (primarily due to another resource that exist with new updated name)" + }, + "429": { + "description": "Too Many Requests - Too many resources are concurrently created / updated / deleted in the account. Please re-submit API requests after resource changes are completed)" + }, + "500": { + "description": "Internal system error - If this error persists, please contact customer support" + }, + "503": { + "description": "Service Unavailable - Server is temporarily unable to handle the request, please try again later. If this error persists, please contact customer support " + } + } } }, "/subscriptions/{subscriptionId}/regions/{regionId}/private-link/principals": { @@ -6249,6 +6322,68 @@ "description": "Service Unavailable - Server is temporarily unable to handle the request, please try again later. If this error persists, please contact customer support " } } + }, + "delete": { + "tags": [ + "Subscriptions - Pro - Connectivity" + ], + "summary": "Delete Private Link", + "description": "Deletes the Private Link configuration for a subscription.", + "operationId": "deletePrivateLink", + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "Subscription ID.", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "400": { + "description": "Bad Request - The server cannot process the request due to something that is perceived to be a client error" + }, + "412": { + "description": "Precondition Failed - Feature flag for this flow is off" + }, + "204": { + "description": "No Content", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TaskStateUpdate" + } + } + } + }, + "401": { + "description": "Unauthorized - Authentication failed for requested resource" + }, + "403": { + "description": "Forbidden - Not allowed to access requested resource (primarily due to client source IP API Key restrictions)" + }, + "404": { + "description": "Not Found - The resource you were trying to reach was not found or does not exist" + }, + "408": { + "description": "Request Timeout - The server didn't receive a complete request message within the server's allotted timeout period" + }, + "409": { + "description": "Conflict - request could not be processed because of a conflict (primarily due to another resource that exist with new updated name)" + }, + "429": { + "description": "Too Many Requests - Too many resources are concurrently created / updated / deleted in the account. Please re-submit API requests after resource changes are completed)" + }, + "500": { + "description": "Internal system error - If this error persists, please contact customer support" + }, + "503": { + "description": "Service Unavailable - Server is temporarily unable to handle the request, please try again later. If this error persists, please contact customer support " + } + } } }, "/subscriptions/{subscriptionId}/private-link/principals": { @@ -9405,6 +9540,74 @@ } } }, + "/subscriptions/{subscriptionId}/databases/{databaseId}/available-target-versions": { + "get": { + "tags": [ + "Databases - Pro" + ], + "summary": "Get available upgrade versions for Pro database", + "description": "Gets a list of available Redis versions that the specified Pro database can be upgraded to.", + "operationId": "getDatabaseAvailableVersions", + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "Subscription ID.", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "databaseId", + "in": "path", + "description": "Database ID.", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "400": { + "description": "Bad Request - The server cannot process the request due to something that is perceived to be a client error" + }, + "412": { + "description": "Precondition Failed - Feature flag for this flow is off" + }, + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BdbAvailableVersionsResponse" + } + } + } + }, + "401": { + "description": "Unauthorized - Authentication failed for requested resource" + }, + "403": { + "description": "Forbidden - Not allowed to access requested resource (primarily due to client source IP API Key restrictions)" + }, + "404": { + "description": "Not Found - The resource you were trying to reach was not found or does not exist" + }, + "429": { + "description": "Too Many Requests - Too many resources are concurrently created / updated / deleted in the account. Please re-submit API requests after resource changes are completed)" + }, + "500": { + "description": "Internal system error - If this error persists, please contact customer support" + }, + "503": { + "description": "Service Unavailable - Server is temporarily unable to handle the request, please try again later. If this error persists, please contact customer support " + } + } + } + }, "/subscriptions/redis-versions": { "get": { "tags": [ @@ -9879,6 +10082,74 @@ } } }, + "/fixed/subscriptions/{subscriptionId}/databases/{databaseId}/available-target-versions": { + "get": { + "tags": [ + "Databases - Essentials" + ], + "summary": "Get available upgrade versions for Essentials database", + "description": "Gets a list of available Redis versions that the specified Essentials database can be upgraded to.", + "operationId": "getEssentialsDatabaseAvailableVersions", + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "Subscription ID.", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "databaseId", + "in": "path", + "description": "Database ID.", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "400": { + "description": "Bad Request - The server cannot process the request due to something that is perceived to be a client error" + }, + "412": { + "description": "Precondition Failed - Feature flag for this flow is off" + }, + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BdbAvailableVersionsResponse" + } + } + } + }, + "401": { + "description": "Unauthorized - Authentication failed for requested resource" + }, + "403": { + "description": "Forbidden - Not allowed to access requested resource (primarily due to client source IP API Key restrictions)" + }, + "404": { + "description": "Not Found - The resource you were trying to reach was not found or does not exist" + }, + "429": { + "description": "Too Many Requests - Too many resources are concurrently created / updated / deleted in the account. Please re-submit API requests after resource changes are completed)" + }, + "500": { + "description": "Internal system error - If this error persists, please contact customer support" + }, + "503": { + "description": "Service Unavailable - Server is temporarily unable to handle the request, please try again later. If this error persists, please contact customer support " + } + } + } + }, "/fixed/redis-versions": { "get": { "tags": [ @@ -10265,6 +10536,14 @@ }, "components": { "schemas": { + "TargetVersion": { + "type": "object", + "properties": { + "redisVersion": { + "type": "string" + } + } + }, "AclUserCreateRequest": { "required": [ "name", @@ -11682,148 +11961,289 @@ "example": { "regions": [ { + "id": 1, "name": "us-east-1", "provider": "AWS" }, { + "id": 2, "name": "us-west-1", "provider": "AWS" }, { + "id": 3, "name": "us-west-2", "provider": "AWS" }, { + "id": 4, "name": "eu-west-1", "provider": "AWS" }, { + "id": 29, "name": "eu-central-1", "provider": "AWS" }, { - "name": "ap-northeast-1", + "id": 7, + "name": "sa-east-1", "provider": "AWS" }, { - "name": "ap-southeast-1", + "id": 63, + "name": "ca-central-1", "provider": "AWS" }, { - "name": "ap-southeast-2", + "id": 62, + "name": "eu-north-1", "provider": "AWS" }, { - "name": "sa-east-1", + "id": 61, + "name": "eu-west-3", + "provider": "AWS" + }, + { + "id": 60, + "name": "eu-west-2", "provider": "AWS" }, { + "id": 59, "name": "us-east-2", "provider": "AWS" }, { - "name": "eu-west-2", + "id": 64, + "name": "ap-east-1", "provider": "AWS" }, { - "name": "eu-west-3", + "id": 146, + "name": "ap-southeast-5", "provider": "AWS" }, { - "name": "eu-north-1", + "id": 30, + "name": "ap-south-1", "provider": "AWS" }, { - "name": "ca-central-1", + "id": 117, + "name": "ap-northeast-3", "provider": "AWS" }, { - "name": "ap-east-1", + "id": 116, + "name": "ap-northeast-2", "provider": "AWS" }, { - "name": "ap-south-1", + "id": 145, + "name": "ap-southeast-7", + "provider": "AWS" + }, + { + "id": 6, + "name": "ap-northeast-1", "provider": "AWS" }, { + "id": 5, + "name": "ap-southeast-1", + "provider": "AWS" + }, + { + "id": 15, + "name": "ap-southeast-2", + "provider": "AWS" + }, + { + "id": 132, + "name": "il-central-1", + "provider": "AWS" + }, + { + "id": 144, + "name": "mx-central-1", + "provider": "AWS" + }, + { + "id": 32, "name": "asia-east1", "provider": "GCP" }, { + "id": 67, "name": "asia-east2", "provider": "GCP" }, { + "id": 33, "name": "asia-northeast1", "provider": "GCP" }, { + "id": 104, "name": "asia-northeast2", "provider": "GCP" }, { + "id": 69, "name": "asia-south1", "provider": "GCP" }, { + "id": 34, "name": "asia-southeast1", "provider": "GCP" }, { + "id": 71, "name": "australia-southeast1", "provider": "GCP" }, { + "id": 72, "name": "europe-north1", "provider": "GCP" }, { + "id": 35, "name": "europe-west1", "provider": "GCP" }, { + "id": 74, "name": "europe-west2", "provider": "GCP" }, { + "id": 128, + "name": "asia-southeast2", + "provider": "GCP" + }, + { + "id": 75, "name": "europe-west3", "provider": "GCP" }, { + "id": 36, "name": "europe-west4", "provider": "GCP" }, { + "id": 133, + "name": "europe-west10", + "provider": "GCP" + }, + { + "id": 130, + "name": "europe-southwest1", + "provider": "GCP" + }, + { + "id": 134, + "name": "europe-west8", + "provider": "GCP" + }, + { + "id": 113, "name": "europe-west6", "provider": "GCP" }, { + "id": 129, + "name": "me-west1", + "provider": "GCP" + }, + { + "id": 135, + "name": "europe-west9", + "provider": "GCP" + }, + { + "id": 77, "name": "northamerica-northeast1", "provider": "GCP" }, { - "name": "southamerica-east1", + "id": 136, + "name": "europe-west12", + "provider": "GCP" + }, + { + "id": 137, + "name": "europe-central2", + "provider": "GCP" + }, + { + "id": 131, + "name": "northamerica-northeast2", + "provider": "GCP" + }, + { + "id": 138, + "name": "me-central2", + "provider": "GCP" + }, + { + "id": 139, + "name": "me-central1", + "provider": "GCP" + }, + { + "id": 140, + "name": "us-east5", + "provider": "GCP" + }, + { + "id": 141, + "name": "us-south1", "provider": "GCP" }, { + "id": 27, "name": "us-central1", "provider": "GCP" }, { + "id": 38, "name": "us-east1", "provider": "GCP" }, { + "id": 39, "name": "us-east4", "provider": "GCP" }, { + "id": 40, "name": "us-west1", "provider": "GCP" }, { + "id": 82, "name": "us-west2", "provider": "GCP" + }, + { + "id": 142, + "name": "southamerica-west1", + "provider": "GCP" + }, + { + "id": 95, + "name": "southamerica-east1", + "provider": "GCP" + }, + { + "id": 143, + "name": "africa-south1", + "provider": "GCP" } ] } @@ -13542,6 +13962,7 @@ "cloudDetails": [ { "provider": "AWS", + "awsAccountId": "550680565604", "cloudAccountId": 1666, "totalSizeInGb": 0.0272, "regions": [ @@ -14700,6 +15121,17 @@ }, "description": "Database tag" }, + "BdbAvailableVersionsResponse": { + "type": "object", + "properties": { + "targets": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TargetVersion" + } + } + } + }, "SubscriptionSpec": { "required": [ "regions" @@ -15377,6 +15809,10 @@ "Region": { "type": "object", "properties": { + "id": { + "type": "integer", + "format": "int32" + }, "name": { "type": "string" }, @@ -15476,7 +15912,6 @@ "SUBSCRIPTION_BAD_PREFERRED_AZ_SIZE", "SUBSCRIPTION_PREFERRED_AZ_INVALID_VALUE", "SUBSCRIPTION_PREFERRED_AZ_MUST_BE_DEFINED_ONCE", - "ACTIVE_ACTIVE_SUBSCRIPTION_PREFERRED_AZ_NOT_SUPPORTED", "SUBSCRIPTION_PREFERRED_AZ_IS_DISABLED", "SUBSCRIPTION_MUST_HAVE_AT_LEAST_ONE_DATABASE", "SUBSCRIPTION_REDIS_VERSION_INVALID_VALUE", @@ -15503,7 +15938,6 @@ "CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_INVALID_REGION", "CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_DUPLICATE_REGIONS", "CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_INVALID_FORMAT", - "CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_CREATE_FAILED", "ACTIVE_ACTIVE_CREATE_A_REGION_CUSTOMER_MANAGED_KEY_RESOURCE_NAME_SUBSCRIPTION_IS_NOT_CUSTOMER_MANAGED", "ACTIVE_ACTIVE_CREATE_A_REGION_CUSTOMER_MANAGED_KEY_RESOURCE_NAME_IS_NOT_SET", "PLANNED_SUBSCRIPTION_INVALID_PLAN_ID", @@ -16005,8 +16439,11 @@ "PRIVATE_LINK_DELETING_AN_ACTIVE_ACTIVE_SUBSCRIPTION_PRINCIPALS_IS_NOT_ALLOWED_WITH_A_SINGLE_REGION_SUBSCRIPTION", "PRIVATE_LINK_CREATE_A_FLEXIBLE_SUBSCRIPTION_PRIVATE_LINK_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION", "PRIVATE_LINK_CREATE_AN_ACTIVE_ACTIVE_SUBSCRIPTION_PRIVATE_LINK_IS_NOT_ALLOWED_WITH_A_SINGLE_REGION_SUBSCRIPTION", + "PRIVATE_LINK_DELETING_A_FLEXIBLE_SUBSCRIPTION_PRIVATE_LINK_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION", + "PRIVATE_LINK_DELETING_AN_ACTIVE_ACTIVE_SUBSCRIPTION_PRIVATE_LINK_IS_NOT_ALLOWED_WITH_A_SINGLE_REGION_SUBSCRIPTION", "PRIVATE_LINK_IS_NOT_SUPPORTED", - "PRIVATE_LINK_SERVICE_ERROR" + "PRIVATE_LINK_SERVICE_ERROR", + "COST_REPORT_IS_NOT_SUPPORTED" ] }, "additionalInfo": { @@ -16443,7 +16880,7 @@ }, "persistentStorageEncryptionType": { "type": "string", - "description": "Optional. Persistent storage encryption secures data-at-rest for database persistence. You can use 'cloud-provider-managed-key' or 'customer-managed-key'. Default: 'cloud-provider-managed-key'", + "description": "Optional. Persistent storage encryption secures data at rest for database persistence. By default, disk storage is encrypted by keys managed by the cloud provider. Use 'customer-managed-key' if you want to use self-managed persistent storage encryption keys. Default: 'cloud-provider-managed-key'", "example": "cloud-provider-managed-key", "enum": [ "cloud-provider-managed-key", @@ -17011,12 +17448,12 @@ "properties": { "resourceName": { "type": "string", - "description": "Required. Resource name of the customer managed key as defined by the cloud provider.", + "description": "The resource name of the customer managed key.", "example": "projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME" }, "region": { "type": "string", - "description": "Name of region to for the customer managed key as defined by the cloud provider. Required for active-active subscriptions." + "description": "(Required for Active-Active subscriptions only) Region for the customer managed key as defined by the cloud provider." } }, "description": "Object representing a customer managed key (CMK), along with the region it is associated to." @@ -17082,7 +17519,7 @@ }, "customerManagedKeyResourceName": { "type": "string", - "description": "Optional. Resource name of the customer managed key as defined by the cloud provider for customer managed subscriptions.", + "description": "Required for subscriptions where 'persistentStorageEncryptionType' is 'customer-managed-key'. The resource name of the customer-managed encryption key for the region.", "example": "projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME" }, "commandType": {