From 40377c8c7e8cb5acd9fea42e35bb0e5ed9517057 Mon Sep 17 00:00:00 2001 From: "redisdocsapp[bot]" <177626021+redisdocsapp[bot]@users.noreply.github.com> Date: Mon, 14 Jul 2025 00:23:32 +0000 Subject: [PATCH 1/2] Update content/operate/rc/api/api-reference/openapi.json --- .../operate/rc/api/api-reference/openapi.json | 528 +++++++++++++++++- 1 file changed, 524 insertions(+), 4 deletions(-) diff --git a/content/operate/rc/api/api-reference/openapi.json b/content/operate/rc/api/api-reference/openapi.json index 293e3a8cb8..0a7fd7dfc2 100644 --- a/content/operate/rc/api/api-reference/openapi.json +++ b/content/operate/rc/api/api-reference/openapi.json @@ -41,6 +41,11 @@ "description": "All Pro subscription connectivity operations.", "x-order": "11" }, + { + "name": "Subscriptions - Dedicated", + "description": "All Dedicated subscription operations.", + "x-order": "11" + }, { "name": "Databases - Pro", "description": "All Pro database operations.", @@ -3077,7 +3082,7 @@ ], "summary": "Get a single Essentials subscription", "description": "Gets information on the specified Essentials subscription.", - "operationId": "getSubscriptionById_1", + "operationId": "getSubscriptionById_2", "parameters": [ { "name": "subscriptionId", @@ -6566,6 +6571,158 @@ } } }, + "/subscriptions/dedicated": { + "get": { + "tags": [ + "Subscriptions - Dedicated" + ], + "summary": "Get Dedicated subscriptions", + "description": "Gets a list of all Dedicated subscriptions in the current account.", + "operationId": "getAllSubscriptions_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" + }, + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DedicatedSubscriptions" + } + } + } + }, + "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 " + } + } + }, + "post": { + "tags": [ + "Subscriptions - Dedicated" + ], + "summary": "Create Dedicated subscription", + "description": "Creates a new Redis Cloud Dedicated subscription.", + "operationId": "createSubscription_1", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DedicatedSubscriptionCreateRequest" + }, + "example": { + "name": "My new subscription", + "deploymentType": "single-region", + "replication": true, + "paymentMethod": "credit-card", + "paymentMethodId": 12345, + "cloudProviders": [ + { + "provider": "AWS", + "regions": [ + { + "region": "us-east-1", + "multipleAvailabilityZones": true, + "preferredAvailabilityZones": [ + "use1-az1", + "use1-az2", + "use1-az3" + ], + "networking": { + "deploymentCIDR": "10.0.0.0/24", + "vpcId": "vpc-123456789" + } + } + ], + "instanceTypes": [ + { + "name": "S2", + "quantity": 2 + } + ] + } + ], + "databases": [ + { + "name": "Redis-database-example", + "supportOSSClusterApi": false, + "redisVersion": "8.0", + "port": 1010, + "dataEvictionPolicy": "allkeys-lfu", + "supportSharding": true + } + ] + } + } + }, + "required": true + }, + "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" + }, + "202": { + "description": "Accepted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TaskStateUpdate" + } + } + } + }, + "401": { + "description": "Unauthorized - Authentication failed for requested resource" + }, + "403": { + "description": "Forbidden - Not allowed to create requested resource (primarily due to not active resource)" + }, + "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 the new name" + }, + "422": { + "description": "Unprocessable Entity - The server understands the request, and the syntax of the request is correct, but it was unable to process the contained instructions" + }, + "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/subscriptions": { "get": { "tags": [ @@ -6573,7 +6730,7 @@ ], "summary": "Get Essentials subscriptions", "description": "Gets a list of all Essentials subscriptions in the current account.", - "operationId": "getAllSubscriptions_1", + "operationId": "getAllSubscriptions_2", "responses": { "400": { "description": "Bad Request - The server cannot process the request due to something that is perceived to be a client error" @@ -6617,7 +6774,7 @@ ], "summary": "Create Essentials subscription", "description": "Creates a new Essentials subscription.", - "operationId": "createSubscription_1", + "operationId": "createSubscription_2", "requestBody": { "content": { "application/json": { @@ -8577,6 +8734,64 @@ } } }, + "/subscriptions/dedicated/{subscriptionId}": { + "get": { + "tags": [ + "Subscriptions - Dedicated" + ], + "summary": "Get a single dedicated subscription", + "description": "Gets information on the specified dedicated subscription.", + "operationId": "getSubscriptionById_1", + "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" + }, + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DedicatedSubscription" + } + } + } + }, + "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 " + } + } + } + }, "/session-logs": { "get": { "tags": [ @@ -10083,6 +10298,45 @@ ] } }, + "DedicatedSubscriptionSpec": { + "required": [ + "instanceTypes", + "regions" + ], + "type": "object", + "properties": { + "provider": { + "type": "string", + "description": "Optional. Cloud provider. Default: 'AWS'", + "example": "AWS", + "enum": [ + "AWS", + "GCP" + ] + }, + "cloudAccountId": { + "type": "integer", + "description": "Optional. Cloud account identifier. Default: Redis internal cloud account (Cloud Account ID = 1). Use GET /cloud-accounts to list all available cloud accounts. Note: A subscription on Google Cloud can be created only with Redis internal cloud account.", + "format": "int32", + "example": 1 + }, + "regions": { + "type": "array", + "description": "The cloud provider region or list of regions (Active-Active only) and networking details.", + "items": { + "$ref": "#/components/schemas/SubscriptionRegionSpec" + } + }, + "instanceTypes": { + "type": "array", + "description": "Instance types and their quantities", + "items": { + "$ref": "#/components/schemas/DedicatedInstanceTypeSpecs" + } + } + }, + "description": "Cloud provider, region, and networking details." + }, "CidrWhiteListUpdateRequest": { "type": "object", "properties": { @@ -11143,6 +11397,65 @@ }, "description": "Optional. This database will be a replica of the specified Redis databases, provided as a list of objects with endpoint and certificate details." }, + "DedicatedSubscriptionCreateRequest": { + "required": [ + "cloudProviders", + "name" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "New subscription name.", + "example": "My new subscription" + }, + "deploymentType": { + "type": "string", + "description": "Optional. When 'single-region' or not set: Creates a single region subscription. When 'active-active': creates an Active-Active (multi-region) subscription.", + "example": "single-region", + "enum": [ + "single-region", + "active-active" + ] + }, + "replication": { + "type": "boolean", + "description": "Optional. Sets database replication. Default: 'true'" + }, + "paymentMethod": { + "type": "string", + "description": "Optional. The payment method for the subscription. If set to ‘credit-card’, ‘paymentMethodId’ must be defined. Default: 'credit-card'", + "enum": [ + "credit-card", + "marketplace" + ] + }, + "paymentMethodId": { + "type": "integer", + "description": "Optional. A valid payment method ID for this account. Use GET /payment-methods to get a list of all payment methods for your account. This value is optional if ‘paymentMethod’ is ‘marketplace’, but required for all other account types.", + "format": "int32" + }, + "cloudProviders": { + "type": "array", + "description": "Cloud provider, region, and networking details.", + "items": { + "$ref": "#/components/schemas/DedicatedSubscriptionSpec" + } + }, + "databases": { + "type": "array", + "description": "One or more database specification(s) to create in this subscription.", + "items": { + "$ref": "#/components/schemas/DedicatedSubscriptionDatabaseSpec" + } + }, + "commandType": { + "type": "string", + "readOnly": true + } + }, + "description": "Dedicated Subscription create request" + }, "MaintenanceWindow": { "type": "object", "properties": { @@ -11316,6 +11629,31 @@ }, "description": "Essentials subscription update request" }, + "DedicatedSubscriptions": { + "type": "object", + "properties": { + "accountId": { + "type": "integer", + "format": "int32" + }, + "subscriptions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DedicatedSubscription" + } + }, + "links": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "description": "RedisLabs list of dedicated subscriptions in current account" + }, "SearchScalingFactorsData": { "type": "object", "properties": { @@ -13570,6 +13908,129 @@ }, "description": "Database tag" }, + "DedicatedInstanceTypeSpecs": { + "required": [ + "name", + "quantity" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Instance type name" + }, + "quantity": { + "type": "integer", + "description": "Instance type quantity", + "format": "int32" + } + }, + "description": "Instance types and their quantities" + }, + "DedicatedSubscription": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "Unique identifier for the subscription", + "format": "int32" + }, + "name": { + "type": "string", + "description": "Name of the subscription" + }, + "paymentMethodId": { + "type": "integer", + "description": "Payment method identifier", + "format": "int32" + }, + "status": { + "type": "string", + "description": "Current status of the subscription" + }, + "memoryStorage": { + "type": "string", + "description": "Memory storage configuration for the subscription", + "enum": [ + "ram", + "ram-and-flash" + ] + }, + "numberOfDatabases": { + "type": "integer", + "description": "Number of databases in the subscription", + "format": "int32" + }, + "paymentMethodType": { + "type": "string", + "description": "Type of payment method used", + "enum": [ + "credit-card", + "marketplace" + ] + }, + "links": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": { + "type": "object" + } + } + }, + "totalSizeInGb": { + "type": "number", + "format": "float" + } + }, + "description": "Redis Dedicated Subscription information", + "example": { + "id": 1207, + "name": "my dedicated subscription", + "paymentMethodId": 1234, + "status": "active", + "memoryStorage": "ram", + "storageEncryption": true, + "numberOfDatabases": 1, + "paymentMethodType": "credit-card", + "deploymentType": "single-region", + "instanceTypes": [ + { + "name": "S1", + "quantity": 2 + } + ], + "cloudDetails": [ + { + "provider": "AWS", + "regions": [ + { + "region": "us-east-1", + "networking": [ + { + "deploymentCIDR": "192.168.0.0/24" + } + ], + "preferredAvailabilityZones": [ + "use1-az1", + "use1-az2", + "use1-az3" + ] + } + ], + "links": [] + } + ], + "subscriptionPricing": [], + "links": [ + { + "type": "GET", + "href": "http://localhost:8081/v1/subscriptions/dedicated/1207", + "rel": "self" + } + ] + } + }, "SubscriptionSpec": { "required": [ "regions" @@ -13954,6 +14415,55 @@ }, "description": "The cloud provider region or list of regions (Active-Active only) and networking details." }, + "DedicatedSubscriptionDatabaseSpec": { + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the database. Database name is limited to 40 characters or less and must include only letters, digits, and hyphens ('-'). It must start with a letter and end with a letter or digit.", + "example": "Redis-database-example" + }, + "supportOSSClusterApi": { + "type": "boolean", + "description": "Optional. Support Redis [OSS Cluster API](https://redis.io/docs/latest/operate/rc/databases/configuration/clustering/#oss-cluster-api). Default: 'false'", + "example": false + }, + "redisVersion": { + "type": "string", + "description": "Optional. If specified, redisVersion defines the Redis database version. If omitted, the Redis version will be set to the default version (available in 'GET /subscriptions/redis-versions')", + "example": "7.2" + }, + "port": { + "type": "integer", + "description": "Optional. TCP port on which the database is available (10000-19999). Generated automatically if not set.", + "format": "int32", + "example": 10000 + }, + "dataEvictionPolicy": { + "type": "string", + "description": "Optional. Data eviction policy. Default: 'volatile-lru'", + "enum": [ + "allkeys-lru", + "allkeys-lfu", + "allkeys-random", + "volatile-lru", + "volatile-lfu", + "volatile-random", + "volatile-ttl", + "noeviction" + ] + }, + "supportSharding": { + "type": "boolean", + "description": "Optional. Support sharding. Default: 'false'", + "example": false + } + }, + "description": "One or more database specification(s) to create in this subscription." + }, "VpcPeeringCreateGcpRequest": { "required": [ "vpcNetworkName", @@ -14297,6 +14807,7 @@ "ACTIVE_ACTIVE_SUBSCRIPTION_PREVIEW_REDIS_VERSION_IS_NOT_SUPPORTED", "SUBSCRIPTION_GCP_ALLOW_ONLY_INTERNAL", "CLUSTER_UNDER_MAINTENANCE", + "ACTIVE_ACTIVE_SUBSCRIPTION_IS_NOT_SUPPORTED", "CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_IS_NOT_SUPPORTED", "CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_MISSING_USAGE_PERMISSIONS", "CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_MISSING_GET_KEY_PERMISSIONS", @@ -14610,6 +15121,7 @@ "UPDATING_A_SINGLE_REGION_VPC_PEERING_IS_NOT_ALLOWED_WITH_ACTIVE_ACTIVE_SUBSCRIPTION", "DELETING_SINGLE_REGION_VPC_PEERING_IS_NOT_ALLOWED_WITH_ACTIVE_ACTIVE_SUBSCRIPTION", "GETTING_SINGLE_REGION_VPC_PEERINGS_IS_NOT_ALLOWED_WITH_ACTIVE_ACTIVE_SUBSCRIPTION", + "ACTIVE_ACTIVE_DATABASE_LIMIT_EXCEEDED", "FIXED_DATABASE_NAME_IS_MISSING", "CREATING_FIXED_DATABASE_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION", "UPDATING_FIXED_DATABASE_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION", @@ -14783,7 +15295,10 @@ "DATABASE_UPGRADE_IS_NOT_SUPPORTED", "ACTIVE_ACTIVE_EXTERNAL_ACCOUNTS_NOT_SUPPORTED", "ACTIVE_ACTIVE_MULTIPLE_CLOUD_ACCOUNTS_NOT_SUPPORTED", - "ACTIVE_ACTIVE_GCP_EXTERNAL_CLOUD_ACCOUNT_NOT_SUPPORTED" + "ACTIVE_ACTIVE_GCP_EXTERNAL_CLOUD_ACCOUNT_NOT_SUPPORTED", + "DEDICATED_SUBSCRIPTION_PREFERRED_AZ_INVALID_VALUE", + "DEDICATED_SUBSCRIPTION_INVALID_INSTANCE_NAME", + "DEDICATED_SUBSCRIPTION_INVALID_REPLICATION" ] }, "additionalInfo": { @@ -15724,6 +16239,11 @@ "type": "string", "description": "Name of region to add as defined by the cloud provider." }, + "vpcId": { + "type": "string", + "description": "Optional. Enter a VPC identifier that exists in the hosted AWS account. Creates a new VPC if not set. VPC Identifier must be in a valid format and must exist within the hosting account.", + "example": "vpc-0125be68a4625884ad" + }, "deploymentCIDR": { "type": "string", "description": "Deployment CIDR mask. Must be a valid CIDR format with a range of 256 IP addresses.", From 6381b60dbbe8f0da6a0804bb05428297cbc20bbb Mon Sep 17 00:00:00 2001 From: "redisdocsapp[bot]" <177626021+redisdocsapp[bot]@users.noreply.github.com> Date: Wed, 16 Jul 2025 00:22:25 +0000 Subject: [PATCH 2/2] Update content/operate/rc/api/api-reference/openapi.json --- .../operate/rc/api/api-reference/openapi.json | 516 +----------------- 1 file changed, 3 insertions(+), 513 deletions(-) diff --git a/content/operate/rc/api/api-reference/openapi.json b/content/operate/rc/api/api-reference/openapi.json index 0a7fd7dfc2..1096fa896f 100644 --- a/content/operate/rc/api/api-reference/openapi.json +++ b/content/operate/rc/api/api-reference/openapi.json @@ -41,11 +41,6 @@ "description": "All Pro subscription connectivity operations.", "x-order": "11" }, - { - "name": "Subscriptions - Dedicated", - "description": "All Dedicated subscription operations.", - "x-order": "11" - }, { "name": "Databases - Pro", "description": "All Pro database operations.", @@ -3082,7 +3077,7 @@ ], "summary": "Get a single Essentials subscription", "description": "Gets information on the specified Essentials subscription.", - "operationId": "getSubscriptionById_2", + "operationId": "getSubscriptionById_1", "parameters": [ { "name": "subscriptionId", @@ -6571,158 +6566,6 @@ } } }, - "/subscriptions/dedicated": { - "get": { - "tags": [ - "Subscriptions - Dedicated" - ], - "summary": "Get Dedicated subscriptions", - "description": "Gets a list of all Dedicated subscriptions in the current account.", - "operationId": "getAllSubscriptions_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" - }, - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/DedicatedSubscriptions" - } - } - } - }, - "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 " - } - } - }, - "post": { - "tags": [ - "Subscriptions - Dedicated" - ], - "summary": "Create Dedicated subscription", - "description": "Creates a new Redis Cloud Dedicated subscription.", - "operationId": "createSubscription_1", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/DedicatedSubscriptionCreateRequest" - }, - "example": { - "name": "My new subscription", - "deploymentType": "single-region", - "replication": true, - "paymentMethod": "credit-card", - "paymentMethodId": 12345, - "cloudProviders": [ - { - "provider": "AWS", - "regions": [ - { - "region": "us-east-1", - "multipleAvailabilityZones": true, - "preferredAvailabilityZones": [ - "use1-az1", - "use1-az2", - "use1-az3" - ], - "networking": { - "deploymentCIDR": "10.0.0.0/24", - "vpcId": "vpc-123456789" - } - } - ], - "instanceTypes": [ - { - "name": "S2", - "quantity": 2 - } - ] - } - ], - "databases": [ - { - "name": "Redis-database-example", - "supportOSSClusterApi": false, - "redisVersion": "8.0", - "port": 1010, - "dataEvictionPolicy": "allkeys-lfu", - "supportSharding": true - } - ] - } - } - }, - "required": true - }, - "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" - }, - "202": { - "description": "Accepted", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TaskStateUpdate" - } - } - } - }, - "401": { - "description": "Unauthorized - Authentication failed for requested resource" - }, - "403": { - "description": "Forbidden - Not allowed to create requested resource (primarily due to not active resource)" - }, - "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 the new name" - }, - "422": { - "description": "Unprocessable Entity - The server understands the request, and the syntax of the request is correct, but it was unable to process the contained instructions" - }, - "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/subscriptions": { "get": { "tags": [ @@ -6730,7 +6573,7 @@ ], "summary": "Get Essentials subscriptions", "description": "Gets a list of all Essentials subscriptions in the current account.", - "operationId": "getAllSubscriptions_2", + "operationId": "getAllSubscriptions_1", "responses": { "400": { "description": "Bad Request - The server cannot process the request due to something that is perceived to be a client error" @@ -6774,7 +6617,7 @@ ], "summary": "Create Essentials subscription", "description": "Creates a new Essentials subscription.", - "operationId": "createSubscription_2", + "operationId": "createSubscription_1", "requestBody": { "content": { "application/json": { @@ -8734,64 +8577,6 @@ } } }, - "/subscriptions/dedicated/{subscriptionId}": { - "get": { - "tags": [ - "Subscriptions - Dedicated" - ], - "summary": "Get a single dedicated subscription", - "description": "Gets information on the specified dedicated subscription.", - "operationId": "getSubscriptionById_1", - "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" - }, - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/DedicatedSubscription" - } - } - } - }, - "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 " - } - } - } - }, "/session-logs": { "get": { "tags": [ @@ -10298,45 +10083,6 @@ ] } }, - "DedicatedSubscriptionSpec": { - "required": [ - "instanceTypes", - "regions" - ], - "type": "object", - "properties": { - "provider": { - "type": "string", - "description": "Optional. Cloud provider. Default: 'AWS'", - "example": "AWS", - "enum": [ - "AWS", - "GCP" - ] - }, - "cloudAccountId": { - "type": "integer", - "description": "Optional. Cloud account identifier. Default: Redis internal cloud account (Cloud Account ID = 1). Use GET /cloud-accounts to list all available cloud accounts. Note: A subscription on Google Cloud can be created only with Redis internal cloud account.", - "format": "int32", - "example": 1 - }, - "regions": { - "type": "array", - "description": "The cloud provider region or list of regions (Active-Active only) and networking details.", - "items": { - "$ref": "#/components/schemas/SubscriptionRegionSpec" - } - }, - "instanceTypes": { - "type": "array", - "description": "Instance types and their quantities", - "items": { - "$ref": "#/components/schemas/DedicatedInstanceTypeSpecs" - } - } - }, - "description": "Cloud provider, region, and networking details." - }, "CidrWhiteListUpdateRequest": { "type": "object", "properties": { @@ -11397,65 +11143,6 @@ }, "description": "Optional. This database will be a replica of the specified Redis databases, provided as a list of objects with endpoint and certificate details." }, - "DedicatedSubscriptionCreateRequest": { - "required": [ - "cloudProviders", - "name" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "New subscription name.", - "example": "My new subscription" - }, - "deploymentType": { - "type": "string", - "description": "Optional. When 'single-region' or not set: Creates a single region subscription. When 'active-active': creates an Active-Active (multi-region) subscription.", - "example": "single-region", - "enum": [ - "single-region", - "active-active" - ] - }, - "replication": { - "type": "boolean", - "description": "Optional. Sets database replication. Default: 'true'" - }, - "paymentMethod": { - "type": "string", - "description": "Optional. The payment method for the subscription. If set to ‘credit-card’, ‘paymentMethodId’ must be defined. Default: 'credit-card'", - "enum": [ - "credit-card", - "marketplace" - ] - }, - "paymentMethodId": { - "type": "integer", - "description": "Optional. A valid payment method ID for this account. Use GET /payment-methods to get a list of all payment methods for your account. This value is optional if ‘paymentMethod’ is ‘marketplace’, but required for all other account types.", - "format": "int32" - }, - "cloudProviders": { - "type": "array", - "description": "Cloud provider, region, and networking details.", - "items": { - "$ref": "#/components/schemas/DedicatedSubscriptionSpec" - } - }, - "databases": { - "type": "array", - "description": "One or more database specification(s) to create in this subscription.", - "items": { - "$ref": "#/components/schemas/DedicatedSubscriptionDatabaseSpec" - } - }, - "commandType": { - "type": "string", - "readOnly": true - } - }, - "description": "Dedicated Subscription create request" - }, "MaintenanceWindow": { "type": "object", "properties": { @@ -11629,31 +11316,6 @@ }, "description": "Essentials subscription update request" }, - "DedicatedSubscriptions": { - "type": "object", - "properties": { - "accountId": { - "type": "integer", - "format": "int32" - }, - "subscriptions": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DedicatedSubscription" - } - }, - "links": { - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "type": "object" - } - } - } - }, - "description": "RedisLabs list of dedicated subscriptions in current account" - }, "SearchScalingFactorsData": { "type": "object", "properties": { @@ -13908,129 +13570,6 @@ }, "description": "Database tag" }, - "DedicatedInstanceTypeSpecs": { - "required": [ - "name", - "quantity" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Instance type name" - }, - "quantity": { - "type": "integer", - "description": "Instance type quantity", - "format": "int32" - } - }, - "description": "Instance types and their quantities" - }, - "DedicatedSubscription": { - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "Unique identifier for the subscription", - "format": "int32" - }, - "name": { - "type": "string", - "description": "Name of the subscription" - }, - "paymentMethodId": { - "type": "integer", - "description": "Payment method identifier", - "format": "int32" - }, - "status": { - "type": "string", - "description": "Current status of the subscription" - }, - "memoryStorage": { - "type": "string", - "description": "Memory storage configuration for the subscription", - "enum": [ - "ram", - "ram-and-flash" - ] - }, - "numberOfDatabases": { - "type": "integer", - "description": "Number of databases in the subscription", - "format": "int32" - }, - "paymentMethodType": { - "type": "string", - "description": "Type of payment method used", - "enum": [ - "credit-card", - "marketplace" - ] - }, - "links": { - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "type": "object" - } - } - }, - "totalSizeInGb": { - "type": "number", - "format": "float" - } - }, - "description": "Redis Dedicated Subscription information", - "example": { - "id": 1207, - "name": "my dedicated subscription", - "paymentMethodId": 1234, - "status": "active", - "memoryStorage": "ram", - "storageEncryption": true, - "numberOfDatabases": 1, - "paymentMethodType": "credit-card", - "deploymentType": "single-region", - "instanceTypes": [ - { - "name": "S1", - "quantity": 2 - } - ], - "cloudDetails": [ - { - "provider": "AWS", - "regions": [ - { - "region": "us-east-1", - "networking": [ - { - "deploymentCIDR": "192.168.0.0/24" - } - ], - "preferredAvailabilityZones": [ - "use1-az1", - "use1-az2", - "use1-az3" - ] - } - ], - "links": [] - } - ], - "subscriptionPricing": [], - "links": [ - { - "type": "GET", - "href": "http://localhost:8081/v1/subscriptions/dedicated/1207", - "rel": "self" - } - ] - } - }, "SubscriptionSpec": { "required": [ "regions" @@ -14415,55 +13954,6 @@ }, "description": "The cloud provider region or list of regions (Active-Active only) and networking details." }, - "DedicatedSubscriptionDatabaseSpec": { - "required": [ - "name" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the database. Database name is limited to 40 characters or less and must include only letters, digits, and hyphens ('-'). It must start with a letter and end with a letter or digit.", - "example": "Redis-database-example" - }, - "supportOSSClusterApi": { - "type": "boolean", - "description": "Optional. Support Redis [OSS Cluster API](https://redis.io/docs/latest/operate/rc/databases/configuration/clustering/#oss-cluster-api). Default: 'false'", - "example": false - }, - "redisVersion": { - "type": "string", - "description": "Optional. If specified, redisVersion defines the Redis database version. If omitted, the Redis version will be set to the default version (available in 'GET /subscriptions/redis-versions')", - "example": "7.2" - }, - "port": { - "type": "integer", - "description": "Optional. TCP port on which the database is available (10000-19999). Generated automatically if not set.", - "format": "int32", - "example": 10000 - }, - "dataEvictionPolicy": { - "type": "string", - "description": "Optional. Data eviction policy. Default: 'volatile-lru'", - "enum": [ - "allkeys-lru", - "allkeys-lfu", - "allkeys-random", - "volatile-lru", - "volatile-lfu", - "volatile-random", - "volatile-ttl", - "noeviction" - ] - }, - "supportSharding": { - "type": "boolean", - "description": "Optional. Support sharding. Default: 'false'", - "example": false - } - }, - "description": "One or more database specification(s) to create in this subscription." - }, "VpcPeeringCreateGcpRequest": { "required": [ "vpcNetworkName",