{
"openapi": "3.0.1",
"info": {
"title": "Redis Cloud API",
"description": "Redis Cloud API",
"contact": {
"name": "Customer Support",
"url": "https://support.redislabs.com",
"email": "support@redis.com"
},
"version": "Version 1"
},
"externalDocs": {
"description": "Redis Cloud API Documentation",
"url": "https://docs.redislabs.com/latest/rc/api/"
},
"servers": [
{
"url": "https://api.redislabs.com/v1"
}
],
"security": [
{
"x-api-key": [],
"x-api-secret-key": [],
"x-auth-token": []
}
],
"tags": [
{
"name": "Account",
"description": "Current account details.",
"x-order": "0"
},
{
"name": "Subscriptions - Pro",
"description": "All Pro subscription operations.",
"x-order": "10"
},
{
"name": "Subscriptions - Pro - Connectivity",
"description": "All Pro subscription connectivity operations.",
"x-order": "11"
},
{
"name": "Databases - Pro",
"description": "All Pro database operations.",
"x-order": "20"
},
{
"name": "Subscriptions - Essentials",
"description": "All Essentials subscription operations.",
"x-order": "30"
},
{
"name": "Databases - Essentials",
"description": "All Essentials database operations.",
"x-order": "40"
},
{
"name": "Role-based Access Control (RBAC)",
"description": "All operations for [Role-based Access Control](https://redis.io/docs/latest/operate/rc/security/access-control/data-access-control/role-based-access-control/) (RBAC).",
"x-order": "50"
},
{
"name": "Cloud Accounts",
"description": "All operations related to cloud accounts (AWS only).",
"x-order": "60"
},
{
"name": "Users",
"description": "Data and operations related to account's users",
"x-order": "70"
},
{
"name": "Tasks",
"description": "Tracks asynchronous background operations. See [API request lifecycle](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) for more information.",
"x-order": "80"
}
],
"paths": {
"/users/{userId}": {
"get": {
"tags": [
"Users"
],
"summary": "Get a single user",
"description": "Gets details about a single account user.",
"operationId": "getUserById",
"parameters": [
{
"name": "userId",
"in": "path",
"description": "User 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/AccountUser"
}
}
}
},
"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 "
}
}
},
"put": {
"tags": [
"Users"
],
"summary": "Update a user",
"description": "Updates an account user's name or role.",
"operationId": "updateUser",
"parameters": [
{
"name": "userId",
"in": "path",
"description": "User ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AccountUserUpdateRequest"
}
}
},
"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"
},
"200": {
"description": "OK",
"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 "
}
}
},
"delete": {
"tags": [
"Users"
],
"summary": "Delete user",
"description": "Deletes a user from this account.",
"operationId": "deleteUserById",
"parameters": [
{
"name": "userId",
"in": "path",
"description": "User 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/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}": {
"get": {
"tags": [
"Subscriptions - Pro"
],
"summary": "Get a single Pro subscription",
"description": "Gets information on the specified Pro subscription.",
"operationId": "getSubscriptionById",
"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/Subscription"
}
}
}
},
"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 "
}
}
},
"put": {
"tags": [
"Subscriptions - Pro"
],
"summary": "Update Pro subscription",
"description": "Updates the specified Pro subscription.",
"operationId": "updateSubscription",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BaseSubscriptionUpdateRequest"
}
}
},
"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"
},
"200": {
"description": "OK",
"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 "
}
}
},
"delete": {
"tags": [
"Subscriptions - Pro"
],
"summary": "Delete Pro subscription",
"description": "Delete the specified Pro subscription. All databases in the subscription must be deleted before deleting it.",
"operationId": "deleteSubscriptionById",
"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/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}/transitGateways/{TgwId}/attachment": {
"put": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Update a transit gateway attachment",
"description": "Updates the specified AWS transit gateway attachment.",
"operationId": "updateTgwAttachmentCidrs",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "TgwId",
"in": "path",
"description": "AWS transit gateway ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TgwUpdateCidrsRequest"
}
}
},
"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 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 "
}
}
},
"post": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Create a transit gateway attachment",
"description": "Creates an AWS transit gateway attachment.",
"operationId": "createTgwAttachment",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "TgwId",
"in": "path",
"description": "AWS transit gateway 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"
},
"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 "
}
}
},
"delete": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Delete a transit gateway attachment",
"description": "Deletes the specified AWS transit gateway attachment.",
"operationId": "deleteTgwAttachment",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "TgwId",
"in": "path",
"description": "AWS transit gateway 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"
},
"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 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}/transitGateways/invitations/{tgwInvitationId}/reject": {
"put": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Reject a transit gateway resource share",
"description": "Rejects the specified AWS transit gateway resource share.",
"operationId": "rejectTgwResourceShare",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "tgwInvitationId",
"in": "path",
"description": "AWS transit gateway invitation 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"
},
"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 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}/transitGateways/invitations/{tgwInvitationId}/accept": {
"put": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Accept a transit gateway resource share",
"description": "Accepts the specified AWS transit gateway resource share.",
"operationId": "acceptTgwResourceShare",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "tgwInvitationId",
"in": "path",
"description": "AWS transit gateway invitation 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"
},
"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 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}/resource-tags": {
"put": {
"tags": [
"Subscriptions - Pro"
],
"summary": "Update Pro subscription resource tags",
"description": "Updates the resource tags for the specified Pro subscription. This replaces all existing tags with the provided tags.",
"operationId": "updateSubscriptionResourceTags",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SubscriptionResourceTagsUpdateRequest"
}
}
},
"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 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}/transitGateways/{TgwId}/attachment": {
"put": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Update a specific region transit gateway attachment",
"description": "(Active-Active subscriptions only) Updates the specified AWS transit gateway attachment for one region in an Active-Active subscription.",
"operationId": "updateActiveActiveTgwAttachmentCidrs",
"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
},
{
"name": "TgwId",
"in": "path",
"description": "AWS transit gateway ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ActiveActiveTgwUpdateCidrsRequest"
}
}
},
"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 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 "
}
}
},
"post": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Create a transit gateway attachment for a specific region",
"description": "(Active-Active subscriptions only) Creates an AWS transit gateway attachment for one region in an Active-Active subscription.",
"operationId": "createActiveActiveTgwAttachment",
"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
},
{
"name": "TgwId",
"in": "path",
"description": "AWS transit gateway 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"
},
"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 "
}
}
},
"delete": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Delete a transit gateway attachment for a specific region",
"description": "(Active-Active subscriptions only) Deletes the specified AWS transit gateway attachment for one region in an Active-Active subscription.",
"operationId": "deleteActiveActiveTgwAttachment",
"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
},
{
"name": "TgwId",
"in": "path",
"description": "AWS transit gateway 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"
},
"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 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}/transitGateways/invitations/{tgwInvitationId}/accept": {
"put": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Accept a transit gateway resource share for a specific region",
"description": "(Active-Active subscriptions only) Accepts the specified AWS transit gateway resource share for one region in an Active-Active subscription.",
"operationId": "acceptActiveActiveTgwResourceShare",
"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
},
{
"name": "tgwInvitationId",
"in": "path",
"description": "AWS transit gateway invitation 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"
},
"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 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-service-connect/{pscServiceId}/endpoints/{endpointId}": {
"put": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Update a Private Service Connect endpoint for a single region",
"description": "(Active-Active subscriptions only) Updates a Private Service Connect endpoint for a single region in an Active-Active subscription.",
"operationId": "updateActiveActivePscServiceEndpoint",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "pscServiceId",
"in": "path",
"description": "Private Service Connect service 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"
}
},
{
"name": "endpointId",
"in": "path",
"description": "Private Service Connect endpoint ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ActiveActivePscEndpointUpdateRequest"
}
}
},
"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 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 "
}
}
},
"delete": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Delete a Private Service Connect endpoint for a single region",
"description": "(Active-Active subscriptions only) Deletes the specified Private Service Connect endpoint for a single region in an Active-Active subscription.",
"operationId": "deleteActiveActivePscServiceEndpoint",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "pscServiceId",
"in": "path",
"description": "Private Service Connect service 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"
}
},
{
"name": "endpointId",
"in": "path",
"description": "Private Service Connect endpoint 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"
},
"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 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/peerings/{peeringId}": {
"put": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Update Active-Active VPC peering",
"description": "(Active-Active subscriptions only) Updates VPC peering for Active-Active subscription.",
"operationId": "updateActiveActiveVpcPeering",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "peeringId",
"in": "path",
"description": "VPC Peering ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ActiveActiveVpcPeeringUpdateAwsRequest"
},
"example": {
"vpcCidrs": [
"<10.10.10.0/24>",
"<10.10.20.0/24>"
]
}
}
},
"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"
},
"200": {
"description": "OK",
"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 "
}
}
},
"delete": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Delete Active-Active VPC peering",
"description": "(Active-Active subscriptions only) Deletes VPC peering for an Active-Active subscription.",
"operationId": "deleteActiveActiveVpcPeering",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "peeringId",
"in": "path",
"description": "VPC Peering 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/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-service-connect/{pscServiceId}/endpoints/{endpointId}": {
"put": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Update a Private Service Connect endpoint",
"description": "Updates the specified Private Service Connect endpoint.",
"operationId": "updatePscServiceEndpoint",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "pscServiceId",
"in": "path",
"description": "Private Service Connect service ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "endpointId",
"in": "path",
"description": "Private Service Connect endpoint ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PscEndpointUpdateRequest"
}
}
},
"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 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 "
}
}
},
"delete": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Delete a Private Service Connect endpoint",
"description": "Deletes the specified Private Service Connect endpoint.",
"operationId": "deletePscServiceEndpoint",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "pscServiceId",
"in": "path",
"description": "Private Service Connect service ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "endpointId",
"in": "path",
"description": "Private Service Connect endpoint 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"
},
"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 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}/peerings/{peeringId}": {
"put": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Update VPC peering",
"description": "Updates VPC peering for the specified subscription.",
"operationId": "updateVpcPeering",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "peeringId",
"in": "path",
"description": "VPC Peering ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/VpcPeeringUpdateAwsRequest"
},
"example": {
"vpcCidrs": [
"<10.10.10.0/24>",
"<10.10.20.0/24>"
]
}
}
},
"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 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 "
}
}
},
"delete": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Delete VPC peering",
"description": "Deletes the specified VPC peering.",
"operationId": "deleteVpcPeering",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "peeringId",
"in": "path",
"description": "VPC Peering 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"
},
"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 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}/maintenance-windows": {
"get": {
"tags": [
"Subscriptions - Pro"
],
"summary": "Get Pro subscription maintenance windows",
"description": "Gets maintenance windows for the specified Pro subscription.",
"operationId": "getSubscriptionMaintenanceWindows",
"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/SubscriptionMaintenanceWindows"
}
}
}
},
"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 "
}
}
},
"put": {
"tags": [
"Subscriptions - Pro"
],
"summary": "Update Pro subscription maintenance windows",
"description": "Updates maintenance windows for the specified Pro subscription.",
"operationId": "updateSubscriptionMaintenanceWindows",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SubscriptionMaintenanceWindowsSpec"
}
}
},
"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"
},
"200": {
"description": "OK",
"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}/databases/{databaseId}": {
"get": {
"tags": [
"Databases - Pro"
],
"summary": "Get a single Pro database",
"description": "Gets details and settings of a single database in a Pro subscription.",
"operationId": "getSubscriptionDatabaseByID",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"minimum": 0,
"type": "integer",
"format": "int32"
}
},
{
"name": "databaseId",
"in": "path",
"description": "Database ID.",
"required": true,
"schema": {
"minimum": 0,
"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/Database"
}
}
}
},
"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 "
}
}
},
"put": {
"tags": [
"Databases - Pro"
],
"summary": "Update Pro database",
"description": "Updates an existing Pro database.",
"operationId": "updateDatabase",
"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"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DatabaseUpdateRequest"
},
"example": {
"dryRun": false,
"name": "Redis-database-example",
"datasetSizeInGb": 5,
"throughputMeasurement": {
"by": "operations-per-second",
"value": 10000
},
"dataPersistence": "none",
"dataEvictionPolicy": "allkeys-lru",
"alerts": [
{
"name": "dataset-size",
"value": 85
}
]
}
}
},
"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"
},
"200": {
"description": "OK",
"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 "
}
}
},
"delete": {
"tags": [
"Databases - Pro"
],
"summary": "Delete Pro database",
"description": "Deletes a database from a Pro subscription.",
"operationId": "deleteDatabaseById",
"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/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}/databases/{databaseId}/tags": {
"get": {
"tags": [
"Databases - Pro"
],
"summary": "Get database tags",
"description": "Gets a list of all database tags.",
"operationId": "getTags",
"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/CloudTags"
}
}
}
},
"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 "
}
}
},
"put": {
"tags": [
"Databases - Pro"
],
"summary": "Overwrite database tags",
"description": "Overwrites all tags on the database.",
"operationId": "updateTags",
"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"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DatabaseTagsUpdateRequest"
}
}
},
"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"
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CloudTags"
}
}
}
},
"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 "
}
}
},
"post": {
"tags": [
"Databases - Pro"
],
"summary": "Add a database tag",
"description": "Adds a single database tag to a database.",
"operationId": "createTag",
"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"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DatabaseTagCreateRequest"
}
}
},
"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"
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CloudTag"
}
}
}
},
"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 "
}
}
}
},
"/subscriptions/{subscriptionId}/databases/{databaseId}/tags/{tagKey}": {
"put": {
"tags": [
"Databases - Pro"
],
"summary": "Update database tag value",
"description": "Updates the value of the specified database tag.",
"operationId": "updateTag",
"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"
}
},
{
"name": "tagKey",
"in": "path",
"description": "Tag Key.",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DatabaseTagUpdateRequest"
}
}
},
"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"
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CloudTag"
}
}
}
},
"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 "
}
}
},
"delete": {
"tags": [
"Databases - Pro"
],
"summary": "Delete database tag",
"description": "Removes the specified tag from the database.",
"operationId": "deleteTag",
"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"
}
},
{
"name": "tagKey",
"in": "path",
"description": "Tag Key.",
"required": true,
"schema": {
"type": "string"
},
"example": "environment"
}
],
"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": {
"type": "object"
}
}
}
},
"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}/databases/{databaseId}/regions": {
"put": {
"tags": [
"Databases - Pro"
],
"summary": "Update Active-Active database",
"description": "(Active-Active databases only) Updates database properties for an Active-Active database.",
"operationId": "updateCrdbLocalProperties",
"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"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CrdbUpdatePropertiesRequest"
},
"example": {
"datasetSizeInGb": 5,
"regions": [
{
"region": "us-east-1",
"localThroughputMeasurement": {
"region": "us-east-1",
"writeOperationsPerSecond": 1000,
"readOperationsPerSecond": 2000
},
"alerts": [
{
"name": "dataset-size",
"value": 80
}
]
}
],
"dataEvictionPolicy": "allkeys-lru"
}
}
},
"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"
},
"200": {
"description": "OK",
"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}/databases/{databaseId}/flush": {
"put": {
"tags": [
"Databases - Pro"
],
"summary": "Flush Pro database",
"description": "Deletes all data from the specified Pro database.",
"operationId": "flushCrdb",
"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"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CrdbFlushRequest"
}
}
},
"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"
},
"200": {
"description": "OK",
"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}/cidr": {
"get": {
"tags": [
"Subscriptions - Pro"
],
"summary": "Get Pro subscription CIDR whitelist",
"description": "(Bring your own Cloud only) Gets a Pro subscription's CIDR whitelist. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getCidrWhiteList",
"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"
},
"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 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 "
}
}
},
"put": {
"tags": [
"Subscriptions - Pro"
],
"summary": "Update Pro subscription CIDR whitelist",
"description": "(Bring your own Cloud only) Updates a Pro subscription's CIDR whitelist.",
"operationId": "updateSubscriptionCidrWhiteList",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CidrWhiteListUpdateRequest"
}
}
},
"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 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}/transitGateways/invitations/{tgwInvitationId}/reject": {
"put": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Reject transit gateway resource share for a specific region",
"description": "(Active-Active subscriptions only) Rejects the specified AWS transit gateway resource share for one region in an Active-Active subscription.",
"operationId": "rejectActiveActiveTgwResourceShare",
"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
},
{
"name": "tgwInvitationId",
"in": "path",
"description": "AWS transit gateway invitation 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"
},
"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 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 "
}
}
}
},
"/fixed/subscriptions/{subscriptionId}": {
"get": {
"tags": [
"Subscriptions - Essentials"
],
"summary": "Get a single Essentials subscription",
"description": "Gets information on the specified Essentials 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/FixedSubscription"
}
}
}
},
"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 "
}
}
},
"put": {
"tags": [
"Subscriptions - Essentials"
],
"summary": "Update Essentials subscription",
"description": "Updates the specified Essentials subscription.",
"operationId": "updateSubscription_1",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FixedSubscriptionUpdateRequest"
}
}
},
"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 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 "
}
}
},
"delete": {
"tags": [
"Subscriptions - Essentials"
],
"summary": "Delete Essentials subscription",
"description": "Deletes the specified Essentials subscription. All databases in the subscription must be deleted before deleting it.",
"operationId": "deleteSubscriptionById_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/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 "
}
}
}
},
"/fixed/subscriptions/{subscriptionId}/databases/{databaseId}": {
"get": {
"tags": [
"Databases - Essentials"
],
"summary": "Get a single Essentials database",
"description": "Gets details and settings of a single database in an Essentials subscription.",
"operationId": "getSubscriptionDatabaseByID_1",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"minimum": 0,
"type": "integer",
"format": "int32"
}
},
{
"name": "databaseId",
"in": "path",
"description": "Database ID.",
"required": true,
"schema": {
"minimum": 0,
"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/FixedDatabase"
}
}
}
},
"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 "
}
}
},
"put": {
"tags": [
"Databases - Essentials"
],
"summary": "Update Essentials database",
"description": "Updates the specified Essentials database.",
"operationId": "deleteFixedDatabaseByID",
"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"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FixedDatabaseUpdateRequest"
},
"example": {
"name": "Redis-fixed-database-example",
"dataPersistence": "none",
"dataEvictionPolicy": "allkeys-lru",
"replication": true,
"enableDefaultUser": true,
"alerts": [
{
"name": "datasets-size",
"value": 80
}
]
}
}
},
"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"
},
"200": {
"description": "OK",
"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 "
}
}
},
"delete": {
"tags": [
"Databases - Essentials"
],
"summary": "Delete Essentials database",
"description": "Deletes a database from an Essentials subscription.",
"operationId": "deleteFixedDatabaseByID_1",
"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/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 "
}
}
}
},
"/fixed/subscriptions/{subscriptionId}/databases/{databaseId}/tags": {
"get": {
"tags": [
"Databases - Essentials"
],
"summary": "Get database tags",
"description": "Gets a list of all database tags.",
"operationId": "getTags_1",
"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/CloudTags"
}
}
}
},
"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 "
}
}
},
"put": {
"tags": [
"Databases - Essentials"
],
"summary": "Overwrite database tags",
"description": "Overwrites all tags on the database.",
"operationId": "updateTags_1",
"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"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DatabaseTagsUpdateRequest"
}
}
},
"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"
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CloudTags"
}
}
}
},
"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 "
}
}
},
"post": {
"tags": [
"Databases - Essentials"
],
"summary": "Add a database tag",
"description": "Adds a single database tag to a database.",
"operationId": "createTag_1",
"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"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DatabaseTagCreateRequest"
}
}
},
"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"
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CloudTag"
}
}
}
},
"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/{subscriptionId}/databases/{databaseId}/tags/{tagKey}": {
"put": {
"tags": [
"Databases - Essentials"
],
"summary": "Update database tag value",
"description": "Updates the value of the specified database tag.",
"operationId": "updateTag_1",
"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"
}
},
{
"name": "tagKey",
"in": "path",
"description": "Tag Key.",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DatabaseTagUpdateRequest"
}
}
},
"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"
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CloudTag"
}
}
}
},
"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 "
}
}
},
"delete": {
"tags": [
"Databases - Essentials"
],
"summary": "Delete database tag",
"description": "Removes the specified tag from the database.",
"operationId": "deleteTag_1",
"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"
}
},
{
"name": "tagKey",
"in": "path",
"description": "Tag Key.",
"required": true,
"schema": {
"type": "string"
},
"example": "environment"
}
],
"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": {
"type": "object"
}
}
}
},
"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 "
}
}
}
},
"/cloud-accounts/{cloudAccountId}": {
"get": {
"tags": [
"Cloud Accounts"
],
"summary": "Get a single cloud account",
"description": "Gets details on a single cloud account.",
"operationId": "getCloudAccountById",
"parameters": [
{
"name": "cloudAccountId",
"in": "path",
"description": "Cloud Account Id",
"required": true,
"schema": {
"minimum": 0,
"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/CloudAccount"
}
}
}
},
"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 "
}
}
},
"put": {
"tags": [
"Cloud Accounts"
],
"summary": "Update cloud account",
"description": "Updates cloud account details.",
"operationId": "updateCloudAccount",
"parameters": [
{
"name": "cloudAccountId",
"in": "path",
"description": "Cloud Account Id",
"required": true,
"schema": {
"minimum": 0,
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CloudAccountUpdateRequest"
}
}
},
"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 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 "
}
}
},
"delete": {
"tags": [
"Cloud Accounts"
],
"summary": "Delete cloud account",
"description": "Deletes a cloud account.",
"operationId": "deleteCloudAccount",
"parameters": [
{
"name": "cloudAccountId",
"in": "path",
"description": "Cloud Account Id",
"required": true,
"schema": {
"minimum": 0,
"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/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 "
}
}
}
},
"/acl/users/{aclUserId}": {
"get": {
"tags": [
"Role-based Access Control (RBAC)"
],
"summary": "Get a single access control user",
"description": "Gets details and settings for single access control user.",
"operationId": "getUserByID",
"parameters": [
{
"name": "aclUserId",
"in": "path",
"description": "Access control user ID.",
"required": true,
"schema": {
"minimum": 0,
"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/ACLUser"
}
}
}
},
"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 "
}
}
},
"put": {
"tags": [
"Role-based Access Control (RBAC)"
],
"summary": "Update access control user",
"description": "Updates a access control user with a different role or database password.",
"operationId": "updateUser_1",
"parameters": [
{
"name": "aclUserId",
"in": "path",
"description": "Access control user ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AclUserUpdateRequest"
}
}
},
"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"
},
"200": {
"description": "OK",
"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 "
}
}
},
"delete": {
"tags": [
"Role-based Access Control (RBAC)"
],
"summary": "Delete access control user",
"description": "Deletes a access control user.",
"operationId": "deleteUser",
"parameters": [
{
"name": "aclUserId",
"in": "path",
"description": "Access control user 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/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 "
}
}
}
},
"/acl/roles/{aclRoleId}": {
"put": {
"tags": [
"Role-based Access Control (RBAC)"
],
"summary": "Update database access role",
"description": "Updates a database access role with new assigned permissions or associated databases.",
"operationId": "updateRole",
"parameters": [
{
"name": "aclRoleId",
"in": "path",
"description": "Database access role ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AclRoleUpdateRequest"
}
}
},
"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 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 "
}
}
},
"delete": {
"tags": [
"Role-based Access Control (RBAC)"
],
"summary": "Delete database access role",
"description": "Deletes a database access role.",
"operationId": "deleteAclRole",
"parameters": [
{
"name": "aclRoleId",
"in": "path",
"description": "Database access role 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/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 "
}
}
}
},
"/acl/redisRules/{aclRedisRuleId}": {
"put": {
"tags": [
"Role-based Access Control (RBAC)"
],
"summary": "Update Redis ACL rule",
"description": "Updates a Redis ACL rule.",
"operationId": "updateRedisRule",
"parameters": [
{
"name": "aclRedisRuleId",
"in": "path",
"description": "Redis ACL rule ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AclRedisRuleUpdateRequest"
}
}
},
"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 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 "
}
}
},
"delete": {
"tags": [
"Role-based Access Control (RBAC)"
],
"summary": "Delete Redis ACL rule",
"description": "Deletes a Redis ACL rule.",
"operationId": "deleteRedisRule",
"parameters": [
{
"name": "aclRedisRuleId",
"in": "path",
"description": "Redis ACL rule 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"
},
"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 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": {
"get": {
"tags": [
"Subscriptions - Pro"
],
"summary": "Get Pro subscriptions",
"description": "Gets a list of all Pro subscriptions in the current account.",
"operationId": "getAllSubscriptions",
"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/AccountSubscriptions"
}
}
}
},
"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 - Pro"
],
"summary": "Create Pro subscription",
"description": "Creates a new Redis Cloud Pro subscription.",
"operationId": "createSubscription",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SubscriptionCreateRequest"
},
"example": {
"name": "My new subscription",
"dryRun": false,
"deploymentType": "single-region",
"paymentMethod": "credit-card",
"paymentMethodId": 12345,
"publicEndpointAccess": true,
"memoryStorage": "ram",
"cloudProviders": [
{
"provider": "AWS",
"regions": [
{
"region": "us-east-1",
"multipleAvailabilityZones": true,
"preferredAvailabilityZones": [
"use1-az1",
"use1-az4",
"use1-az5"
],
"networking": {
"deploymentCIDR": "10.0.0.0/24"
}
}
]
}
],
"databases": [
{
"name": "Redis-database-example",
"protocol": "redis",
"datasetSizeInGb": 2,
"supportOSSClusterApi": false,
"dataPersistence": "none",
"replication": true,
"throughputMeasurement": {
"by": "operations-per-second",
"value": 10000
},
"quantity": 1
}
]
}
}
},
"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 "
}
}
}
},
"/subscriptions/{subscriptionId}/regions": {
"get": {
"tags": [
"Subscriptions - Pro"
],
"summary": "Get regions in an Active-Active subscription",
"description": "(Active-Active subscriptions only) Gets a list of regions in the specified Active-Active subscription.",
"operationId": "getRegionsFromActiveActiveSubscription",
"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/ActiveActiveSubscriptionRegions"
}
}
}
},
"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 - Pro"
],
"summary": "Add region to Active-Active subscription",
"description": "Adds a new region to an Active-Active subscription.",
"operationId": "addNewRegionToActiveActiveSubscription",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ActiveActiveRegionCreateRequest"
}
}
},
"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"
},
"200": {
"description": "OK",
"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 "
}
}
},
"delete": {
"tags": [
"Subscriptions - Pro"
],
"summary": "Delete regions from an Active-Active subscription",
"description": "(Active-Active subscriptions only) Deletes one or more regions from the specified Active-Active subscription.",
"operationId": "deleteRegionsFromActiveActiveSubscription",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ActiveActiveRegionDeleteRequest"
}
}
},
"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"
},
"200": {
"description": "OK",
"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-service-connect": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get Private Service Connect for a single region",
"description": "(Active-Active subscriptions only) Gets Private Service Connect details for a single region in an Active-Active subscription. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getActiveActivePscService",
"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"
}
}
],
"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 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 - Pro - Connectivity"
],
"summary": "Set up a single region Private Service Connect",
"description": "(Active-Active subscriptions only) Sets up Google Cloud Private Service Connect for a single region in an existing Active-Active subscription hosted on Google Cloud.",
"operationId": "createActiveActivePscService",
"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"
}
}
],
"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 "
}
}
},
"delete": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Remove Private Service Connect for a single region",
"description": "(Active-Active subscriptions only) Deletes a Private Service Connect for a single region in an existing Active-Active subscription hosted on Google Cloud.",
"operationId": "deleteActiveActivePscService",
"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"
}
}
],
"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 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-service-connect/{pscServiceId}": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get Private Service Connect endpoints for a single region",
"description": "(Active-Active subscriptions only) Gets endpoint details for the specified Private Service Connect in a single region in an Active-Active subscription. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getActiveActivePscServiceEndpoints",
"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"
}
},
{
"name": "pscServiceId",
"in": "path",
"description": "Private Service Connect service 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"
},
"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 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 - Pro - Connectivity"
],
"summary": "Create an Private Service Connect endpoint for a single region",
"description": "(Active-Active subscriptions only) Creates a new Private Service Connect endpoint for a single region in an Active-Active subscription.",
"operationId": "createActiveActivePscServiceEndpoint",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "pscServiceId",
"in": "path",
"description": "Private Service Connect service 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"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ActiveActivePscEndpointCreateRequest"
}
}
},
"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 "
}
}
}
},
"/subscriptions/{subscriptionId}/regions/{regionId}/private-link": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get Private Link configuration for a specific region",
"description": "(Active-Active subscriptions only) Gets the Private Link configuration for a specific region. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getActiveActivePrivateLink",
"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"
},
"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 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 - Pro - Connectivity"
],
"summary": "Create a Private Link for a specific region",
"description": "(Active-Active subscriptions only) Creates a new Private Link for a specific region.",
"operationId": "createActiveActivePrivateLink",
"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
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PrivateLinkActiveActiveCreateRequest"
}
}
},
"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"
},
"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 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 "
}
}
},
"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": {
"post": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Add principal to Private Link for a specific region",
"description": "(Active-Active subscriptions only) Adds a principal (AWS ARN) to the Private Link configuration for a specific region.",
"operationId": "createActiveActivePrivateLinkPrincipal",
"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
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PrivateLinkActiveActivePrincipalsCreateRequest"
}
}
},
"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"
},
"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 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 "
}
}
},
"delete": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Remove a principal from Private Link for a specific region",
"description": "(Active-Active subscriptions only) Removes one principal (AWS ARNs) from the Private Link configuration for a specific region.",
"operationId": "deleteActiveActivePrivateLinkPrincipals",
"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
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PrivateLinkActiveActivePrincipalsDeleteRequest"
}
}
},
"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"
},
"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/connections/disassociate": {
"post": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Disassociate connections from Private Link for a specific region",
"description": "(Active-Active subscriptions only) Disassociates one or more VPC endpoint connections from the Private Link configuration for a specific region.",
"operationId": "disassociateActiveActivePrivateLinkConnections",
"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
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PrivateLinkActiveActiveConnectionsDisassociateRequest"
}
}
},
"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 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/peerings": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get Active-Active VPC peering details",
"description": "(Active-Active subscriptions only) Gets VPC peering details for an Active-Active subscription. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getActiveActiveVpcPeerings",
"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/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"
},
"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 - Pro - Connectivity"
],
"summary": "Create Active-Active VPC peering",
"description": "(Active-Active subscriptions only) Sets up VPC peering for an Active-Active subscription. Ensure your cloud provider is also set up for VPC Peering with Redis Cloud. See [VPC Peering](https://docs.redis.com/latest/rc/security/vpc-peering) to learn how to set up VPC Peering with AWS and Google Cloud.",
"operationId": "createActiveActiveVpcPeering",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ActiveActiveVpcPeeringCreateBaseRequest"
},
"example": {
"provider": "string",
"region": "us-east-1",
"awsAccountId": "<aws-account-id>",
"vpcId": "<vpc-identifier>",
"vpcCidrs": [
"<10.10.10.0/24>",
"<10.10.20.0/24>"
]
}
}
},
"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"
},
"200": {
"description": "OK",
"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 "
}
}
}
},
"/subscriptions/{subscriptionId}/private-service-connect": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get Private Service Connect",
"description": "Gets Private Service Connect details for a subscription. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getPscService",
"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"
},
"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 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 - Pro - Connectivity"
],
"summary": "Set up Private Service Connect for a subscription",
"description": "Sets up Google Cloud Private Service Connect for an existing subscription hosted on Google Cloud.",
"operationId": "createPscService",
"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"
},
"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 "
}
}
},
"delete": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Remove Private Service Connect for a subscription",
"description": "Deletes Private Service Connect for a subscription.",
"operationId": "deletePscService",
"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"
},
"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 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-service-connect/{pscServiceId}": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get Private Service Connect endpoints",
"description": "Gets endpoint details for the specified Private Service Connect. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getPscServiceEndpoints",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "pscServiceId",
"in": "path",
"description": "Private Service Connect service 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"
},
"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 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 - Pro - Connectivity"
],
"summary": "Create a Private Service Connect endpoint",
"description": "Creates a new Private Service Connect endpoint.",
"operationId": "createPscServiceEndpoint",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "pscServiceId",
"in": "path",
"description": "Private Service Connect service ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PscEndpointCreateRequest"
}
}
},
"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 "
}
}
}
},
"/subscriptions/{subscriptionId}/private-link": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get Private Link configuration",
"description": "Gets the Private Link configuration for a subscription. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getPrivateLink",
"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"
},
"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 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 - Pro - Connectivity"
],
"summary": "Create a Private Link",
"description": "Creates a new Private Link.",
"operationId": "createPrivateLink",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PrivateLinkCreateRequest"
}
}
},
"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"
},
"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 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 "
}
}
},
"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": {
"post": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Add principal to Private Link",
"description": "Adds a principal (AWS ARN) to the Private Link configuration.",
"operationId": "createPrivateLinkPrincipal",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PrivateLinkPrincipalsCreateRequest"
}
}
},
"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"
},
"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 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 "
}
}
},
"delete": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Remove a principal from Private Link",
"description": "Removes a principal (AWS ARNs) from the Private Link configuration.",
"operationId": "deletePrivateLinkPrincipals",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PrivateLinkPrincipalsDeleteRequest"
}
}
},
"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"
},
"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/connections/disassociate": {
"post": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Disassociate connections from Private Link",
"description": "Disassociates one or more VPC endpoint connections from the Private Link configuration.",
"operationId": "disassociatePrivateLinkConnections",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PrivateLinkConnectionsDisassociateRequest"
}
}
},
"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 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}/peerings": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get VPC peering details",
"description": "Gets VPC peering details for the specified subscription. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getVpcPeering",
"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"
},
"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 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 - Pro - Connectivity"
],
"summary": "Create VPC peering",
"description": "Sets up VPC peering for the specified subscription. Ensure your cloud provider is also set up for VPC Peering with Redis Cloud. See [VPC Peering](https://docs.redis.com/latest/rc/security/vpc-peering) to learn how to set up VPC Peering with AWS and Google Cloud.",
"operationId": "createVpcPeering",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/VpcPeeringCreateBaseRequest"
},
"example": {
"provider": "string",
"sourceRegion": "string",
"destinationRegion": "us-east-1",
"awsAccountId": "<aws-account-id>",
"vpcId": "<vpc-identifier>",
"vpcCidrs": [
"<10.10.10.0/24>",
"<10.10.20.0/24>"
]
}
}
},
"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 "
}
}
}
},
"/subscriptions/{subscriptionId}/databases": {
"get": {
"tags": [
"Databases - Pro"
],
"summary": "Get all databases in a Pro subscription",
"description": "Gets a list of all databases in the specified Pro subscription.",
"operationId": "getSubscriptionDatabases",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"minimum": 0,
"type": "integer",
"format": "int32"
}
},
{
"name": "offset",
"in": "query",
"description": "Number of items to skip.",
"required": false,
"schema": {
"type": "integer",
"format": "int32"
},
"example": 0
},
{
"name": "limit",
"in": "query",
"description": "Maximum number of items to return.",
"required": false,
"schema": {
"type": "integer",
"format": "int32"
},
"example": 100
}
],
"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/AccountSubscriptionDatabases"
}
}
}
},
"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": [
"Databases - Pro"
],
"summary": "Create Pro database in existing subscription",
"description": "Creates a new database in an existing Pro subscription.",
"operationId": "createDatabase",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DatabaseCreateRequest"
},
"example": {
"dryRun": false,
"name": "Redis-database-example",
"port": 10000,
"datasetSizeInGb": 1,
"dataEvictionPolicy": "allkeys-lru",
"replication": true,
"throughputMeasurement": {
"by": "operations-per-second",
"value": 10000
},
"alerts": [
{
"name": "dataset-size",
"value": 80
}
]
}
}
},
"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 "
}
}
}
},
"/subscriptions/{subscriptionId}/databases/{databaseId}/upgrade": {
"get": {
"tags": [
"Databases - Pro"
],
"summary": "Get Pro database version upgrade status",
"description": "Gets information on the latest upgrade attempt for this Pro database.",
"operationId": "getDatabaseRedisVersionUpgradeStatus",
"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/BdbVersionUpgradeStatus"
}
}
}
},
"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": [
"Databases - Pro"
],
"summary": "Upgrade Pro database version",
"description": "Upgrade Pro database version",
"operationId": "upgradeDatabaseRedisVersion",
"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"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DatabaseUpgradeRedisVersionRequest"
}
}
},
"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"
},
"200": {
"description": "OK",
"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}/databases/{databaseId}/traffic/resume": {
"post": {
"tags": [
"Databases - Pro"
],
"summary": "Resume Pro database traffic",
"description": "Resumes traffic for the specified Pro database.",
"operationId": "resumeBdbTraffic",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"minimum": 0,
"type": "integer",
"format": "int32"
}
},
{
"name": "databaseId",
"in": "path",
"description": "Database ID.",
"required": true,
"schema": {
"minimum": 0,
"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": "Traffic resumed"
},
"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}/databases/{databaseId}/import": {
"get": {
"tags": [
"Databases - Pro"
],
"summary": "Get Pro database import status",
"description": "Gets information on the latest import attempt for this Pro database.",
"operationId": "getDatabaseImportStatus",
"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/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"
},
"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": [
"Databases - Pro"
],
"summary": "Import data to a Pro database",
"description": "Imports data from an RDB file or from a different Redis database into this Pro database. WARNING: Importing data into a database removes all existing data from the database.",
"operationId": "importDatabase",
"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"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DatabaseImportRequest"
}
}
},
"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"
},
"200": {
"description": "OK",
"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}/databases/{databaseId}/backup": {
"get": {
"tags": [
"Databases - Pro"
],
"summary": "Get Pro database backup status",
"description": "Gets information on the latest backup attempt for this Pro database.",
"operationId": "getDatabaseBackupStatus",
"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"
}
},
{
"name": "regionName",
"in": "query",
"description": "Region name - required for Active-Active subscription",
"required": false,
"schema": {
"type": "string"
}
}
],
"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/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"
},
"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": [
"Databases - Pro"
],
"summary": "Back up Pro database",
"description": "Manually back up the specified Pro database to a backup path. By default, backups will be stored in the 'remoteBackup' location for this database.",
"operationId": "backupDatabase",
"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"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DatabaseBackupRequest"
}
}
}
},
"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/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 "
}
}
}
},
"/fixed/subscriptions": {
"get": {
"tags": [
"Subscriptions - Essentials"
],
"summary": "Get Essentials subscriptions",
"description": "Gets a list of all Essentials 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/FixedSubscriptions"
}
}
}
},
"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 - Essentials"
],
"summary": "Create Essentials subscription",
"description": "Creates a new Essentials subscription.",
"operationId": "createSubscription_1",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FixedSubscriptionCreateRequest"
}
}
},
"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/{subscriptionId}/databases": {
"get": {
"tags": [
"Databases - Essentials"
],
"summary": "Get all databases in an Essentials subscription",
"description": "Gets a list of all databases in the specified Essentials subscription.",
"operationId": "getFixedSubscriptionDatabases",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"minimum": 0,
"type": "integer",
"format": "int32"
}
},
{
"name": "offset",
"in": "query",
"description": "Number of items to skip.",
"required": false,
"schema": {
"type": "integer",
"format": "int32"
},
"example": 0
},
{
"name": "limit",
"in": "query",
"description": "Maximum number of items to return.",
"required": false,
"schema": {
"type": "integer",
"format": "int32"
},
"example": 100
}
],
"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/AccountFixedSubscriptionDatabases"
}
}
}
},
"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": [
"Databases - Essentials"
],
"summary": "Create Essentials database",
"description": "Creates a new database in the specified Essentials subscription.",
"operationId": "createFixedDatabase",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FixedDatabaseCreateRequest"
},
"example": {
"name": "Redis-fixed-database-example",
"protocol": "stack",
"dataPersistence": "none",
"dataEvictionPolicy": "allkeys-lru",
"replication": true,
"alerts": [
{
"name": "datasets-size",
"value": 80
}
]
}
}
},
"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"
},
"200": {
"description": "OK",
"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/{subscriptionId}/databases/{databaseId}/upgrade": {
"get": {
"tags": [
"Databases - Essentials"
],
"summary": "Get Essentials database version upgrade status",
"description": "Gets information on the latest upgrade attempt for this Essentials database.",
"operationId": "getEssentialsDatabaseRedisVersionUpgradeStatus",
"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/BdbVersionUpgradeStatus"
}
}
}
},
"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": [
"Databases - Essentials"
],
"summary": "Upgrade Essentials database version",
"description": "Upgrades the specified Essentials database to a later Redis version.",
"operationId": "upgradeEssentialsDatabaseRedisVersion",
"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"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FixedDatabaseUpgradeRedisVersionRequest"
}
}
},
"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"
},
"200": {
"description": "OK",
"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 "
}
}
}
},
"/fixed/subscriptions/{subscriptionId}/databases/{databaseId}/traffic/resume": {
"post": {
"tags": [
"Databases - Essentials"
],
"summary": "Resume Essentials database traffic",
"description": "Resumes traffic for the specified Essentials database.",
"operationId": "resumeBdbTraffic_1",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"minimum": 0,
"type": "integer",
"format": "int32"
}
},
{
"name": "databaseId",
"in": "path",
"description": "Database ID.",
"required": true,
"schema": {
"minimum": 0,
"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": "Traffic resumed"
},
"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 "
}
}
}
},
"/fixed/subscriptions/{subscriptionId}/databases/{databaseId}/import": {
"get": {
"tags": [
"Databases - Essentials"
],
"summary": "Get Essentials database import status",
"description": "Gets information on the latest import attempt for this Essentials database.",
"operationId": "getDatabaseImportStatus_1",
"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/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"
},
"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": [
"Databases - Essentials"
],
"summary": "Import data to an Essentials database",
"description": "Imports data from an RDB file or from a different Redis database into this Essentials database. WARNING: Importing data into a database removes all existing data from the database.",
"operationId": "importDatabase_1",
"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"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FixedDatabaseImportRequest"
}
}
},
"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"
},
"200": {
"description": "OK",
"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 "
}
}
}
},
"/fixed/subscriptions/{subscriptionId}/databases/{databaseId}/backup": {
"get": {
"tags": [
"Databases - Essentials"
],
"summary": "Backup Essentials database status",
"description": "Information on the latest database backup status identified by Essentials subscription Id and Essentials database Id",
"operationId": "getDatabaseBackupStatus_1",
"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/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"
},
"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": [
"Databases - Essentials"
],
"summary": "Back up Essentials database",
"description": "Manually back up the specified Essentials database to a backup path. By default, backups will be stored in the 'periodicBackupPath' location for this database.",
"operationId": "backupDatabase_1",
"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"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FixedDatabaseBackupRequest"
}
}
}
},
"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/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 "
}
}
}
},
"/cost-report": {
"post": {
"tags": [
"Account"
],
"summary": "Generate cost report",
"description": "Generates a cost report in FOCUS format for the specified time period (max 40 days range) and filters. [Read more about focus here](https://focus.finops.org/).\n",
"operationId": "createCostReport",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CostReportCreateRequest"
}
}
},
"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 "
}
}
}
},
"/cloud-accounts": {
"get": {
"tags": [
"Cloud Accounts"
],
"summary": "Get cloud accounts",
"description": "Gets a list of all configured cloud accounts.",
"operationId": "getCloudAccounts",
"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/CloudAccounts"
}
}
}
},
"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": [
"Cloud Accounts"
],
"summary": "Create cloud account",
"description": "Creates a cloud account.",
"operationId": "createCloudAccount",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CloudAccountCreateRequest"
}
}
},
"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 "
}
}
}
},
"/acl/users": {
"get": {
"tags": [
"Role-based Access Control (RBAC)"
],
"summary": "Get access control users",
"description": "Gets a list of all access control users for this account.",
"operationId": "getAllUsers_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/AccountACLUsers"
}
}
}
},
"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": [
"Role-based Access Control (RBAC)"
],
"summary": "Create access control user",
"description": "Creates a new access control user with the assigned database access role.",
"operationId": "createUser",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AclUserCreateRequest"
}
}
},
"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 "
}
}
}
},
"/acl/roles": {
"get": {
"tags": [
"Role-based Access Control (RBAC)"
],
"summary": "Get database access roles",
"description": "Gets a list of all database access roles for this account.",
"operationId": "getRoles",
"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/AccountACLRoles"
}
}
}
},
"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": [
"Role-based Access Control (RBAC)"
],
"summary": "Create database access role",
"description": "Creates a new database access role with the assigned permissions and associates it with the provided databases.",
"operationId": "createRole",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AclRoleCreateRequest"
}
}
},
"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 "
}
}
}
},
"/acl/redisRules": {
"get": {
"tags": [
"Role-based Access Control (RBAC)"
],
"summary": "Get Redis ACL rules",
"description": "Gets a list of all Redis ACL rules for this account.",
"operationId": "getAllRedisRules",
"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/AccountACLRedisRules"
}
}
}
},
"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": [
"Role-based Access Control (RBAC)"
],
"summary": "Create Redis ACL rule",
"description": "Creates a new Redis ACL rule.",
"operationId": "createRedisRule",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AclRedisRuleCreateRequest"
}
}
},
"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 "
}
}
}
},
"/users": {
"get": {
"tags": [
"Users"
],
"summary": "Get users",
"description": "Gets a list of all account users.",
"operationId": "getAllUsers",
"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/AccountUsers"
}
}
}
},
"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 "
}
}
}
},
"/tasks": {
"get": {
"tags": [
"Tasks"
],
"summary": "Get tasks",
"description": "Gets a list of all currently running tasks for this account.",
"operationId": "getAllTasks",
"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": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/TasksStateUpdate"
}
}
}
},
"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 "
}
}
}
},
"/tasks/{taskId}": {
"get": {
"tags": [
"Tasks"
],
"summary": "Get a single task",
"description": "Gets details and status of a single task by the Task ID.",
"operationId": "getTaskById",
"parameters": [
{
"name": "taskId",
"in": "path",
"description": "Task ID.",
"required": true,
"schema": {
"type": "string"
}
}
],
"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/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"
},
"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}/transitGateways": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get transit gateways for a subscription",
"description": "Gets all AWS transit gateway details for the specified subscription. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getTgws",
"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/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"
},
"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}/transitGateways/invitations": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get transit gateway invitations for a subscription",
"description": "Gets all AWS transit gateway invitations for the specified subscription. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getTgwSharedInvitations",
"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/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"
},
"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}/transitGateways": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get transit gateways for a single region",
"description": "(Active-Active subscriptions only) Gets all AWS transit gateway details for the specified region in an Active-Active subscription. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getActiveActiveTgws",
"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"
},
"200": {
"description": "OK",
"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"
},
"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}/transitGateways/invitations": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get transit gateway invitations for a single region",
"description": "(Active-Active subscriptions only) Gets AWS transit gateway invitations for the specified region in an Active-Active subscription. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getActiveActiveTgwSharedInvitations",
"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"
},
"200": {
"description": "OK",
"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"
},
"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-service-connect/{pscServiceId}/endpoints/{endpointId}/deletionScripts": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get Private Service Connect endpoint deletion script for a single region",
"description": "(Active-Active subscriptions only) Gets the gcloud script to delete the specified Private Service Connect endpoint on Google Cloud. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getActiveActivPscServiceEndpointDeletionScript",
"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"
}
},
{
"name": "pscServiceId",
"in": "path",
"description": "Private Service Connect service ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "endpointId",
"in": "path",
"description": "Private Service Connect endpoint 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"
},
"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 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/{subscriptionId}/regions/{regionId}/private-service-connect/{pscServiceId}/endpoints/{endpointId}/creationScripts": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get Private Service Connect endpoint creation script for a single region",
"description": "(Active-Active subscriptions only) Gets the gcloud script to create the specified Private Service Connect endpoint on Google Cloud. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getActiveActivPscServiceEndpointCreationScript",
"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"
}
},
{
"name": "pscServiceId",
"in": "path",
"description": "Private Service Connect service ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "endpointId",
"in": "path",
"description": "Private Service Connect endpoint 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"
},
"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 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/{subscriptionId}/regions/{regionId}/private-link/endpoint-script": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get Private Link endpoint script for a single region",
"description": "(Active-Active subscriptions only) Gets the Private Link endpoint script for a single region in an Active-Active subscription. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getActiveActivePrivateLinkEndpointScript",
"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"
}
}
],
"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 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/{subscriptionId}/private-service-connect/{pscServiceId}/endpoints/{endpointId}/deletionScripts": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get Private Service Connect endpoint deletion script",
"description": "Gets the gcloud script to delete the specified Private Service Connect endpoint on Google Cloud. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getPscServiceEndpointDeletionScript",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "pscServiceId",
"in": "path",
"description": "Private Service Connect service ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "endpointId",
"in": "path",
"description": "Private Service Connect endpoint 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"
},
"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 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/{subscriptionId}/private-service-connect/{pscServiceId}/endpoints/{endpointId}/creationScripts": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get Private Service Connect endpoint creation script",
"description": "Gets the gcloud script to create the specified Private Service Connect endpoint on Google Cloud. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getPscServiceEndpointCreationScript",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "pscServiceId",
"in": "path",
"description": "Private Service Connect service ID.",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "endpointId",
"in": "path",
"description": "Private Service Connect endpoint 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"
},
"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 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/{subscriptionId}/private-link/endpoint-script": {
"get": {
"tags": [
"Subscriptions - Pro - Connectivity"
],
"summary": "Get Private Link endpoint script",
"description": "Gets the Python discovery script for Private Link. Internal users can optionally request a Terraform snippet. [Asynchronous operation](https://redis.io/docs/latest/operate/rc/api/get-started/process-lifecycle/) - Query [GET /tasks/{taskId}](#tag/Tasks/operation/getTaskById) with the returned taskId.",
"operationId": "getPrivateLinkEndpointScript",
"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"
},
"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 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/{subscriptionId}/pricing": {
"get": {
"tags": [
"Subscriptions - Pro"
],
"summary": "Get Pro subscription pricing",
"description": "Gets pricing details for the specified Pro subscription.",
"operationId": "getSubscriptionPricing",
"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/SubscriptionPricings"
}
}
}
},
"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/{subscriptionId}/databases/{databaseId}/traffic": {
"get": {
"tags": [
"Databases - Pro"
],
"summary": "Get Pro database traffic",
"description": "Gets traffic information for the specified Pro database. If the database was not a source in a redirect endpoints operation, a not found error will be returned.",
"operationId": "getDatabaseTraffic",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"minimum": 0,
"type": "integer",
"format": "int32"
}
},
{
"name": "databaseId",
"in": "path",
"description": "Database ID.",
"required": true,
"schema": {
"minimum": 0,
"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/DatabaseTrafficStateResponse"
}
}
}
},
"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/{subscriptionId}/databases/{databaseId}/slow-log": {
"get": {
"tags": [
"Databases - Pro"
],
"summary": "Get database slowlog",
"description": "Gets the slowlog for a specific database.",
"operationId": "getSlowLog",
"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"
}
},
{
"name": "regionName",
"in": "query",
"description": "Region name - required for Active-Active subscription",
"required": false,
"schema": {
"type": "string"
}
}
],
"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/DatabaseSlowLogEntries"
}
}
}
},
"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/{subscriptionId}/databases/{databaseId}/certificate": {
"get": {
"tags": [
"Databases - Pro"
],
"summary": "Get Pro database TLS certificate",
"description": "Gets the X.509 PEM (base64) encoded server certificate for TLS connection to the database. Requires 'enableTLS' to be 'true' for the database.",
"operationId": "getSubscriptionDatabaseCertificate",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"minimum": 0,
"type": "integer",
"format": "int32"
}
},
{
"name": "databaseId",
"in": "path",
"description": "Database ID.",
"required": true,
"schema": {
"minimum": 0,
"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/DatabaseCertificate"
}
}
}
},
"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/{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": [
"Subscriptions - Pro"
],
"summary": "Get available Redis database versions",
"description": "Gets a list of all available Redis database versions for Pro subscriptions.",
"operationId": "getRedisVersions",
"parameters": [
{
"name": "subscriptionId",
"in": "query",
"description": "Subscription ID (required for an existing subscription)",
"required": false,
"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/RedisVersions"
}
}
}
},
"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": [
"Account"
],
"summary": "Get session logs",
"description": "Gets session logs for this account.",
"operationId": "getAccountSessionLogs",
"parameters": [
{
"name": "offset",
"in": "query",
"description": "Number of items to skip.",
"required": false,
"schema": {
"type": "integer",
"format": "int32"
},
"example": 0
},
{
"name": "limit",
"in": "query",
"description": "Maximum number of logs to return. Limit: 100",
"required": false,
"schema": {
"maximum": 100,
"minimum": 1,
"type": "integer",
"format": "int32"
},
"example": 100
},
{
"name": "startTime",
"in": "query",
"description": "Filter session logs with time >= startTime (UTC)",
"required": false,
"schema": {
"type": "string"
},
"example": "2025-01-01T00:00:00Z"
},
{
"name": "endTime",
"in": "query",
"description": "Filter session logs with time <= endTime (UTC)",
"required": false,
"schema": {
"type": "string"
},
"example": "2025-01-31T23:59:59Z"
}
],
"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/AccountSessionLogEntries"
}
}
}
},
"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 "
}
}
}
},
"/regions": {
"get": {
"tags": [
"Account"
],
"summary": "Get available Pro plan regions",
"description": "Gets a list of available regions for Pro subscriptions. For Essentials subscriptions, use [GET /fixed/plans](#tag/Subscriptions-Essentials/operation/getAllFixedSubscriptionsPlans).",
"operationId": "getSupportedRegions",
"parameters": [
{
"name": "provider",
"in": "query",
"description": "Filters results to the specified cloud provider.",
"required": false,
"schema": {
"type": "string",
"enum": [
"AWS",
"GCP"
]
}
}
],
"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/Regions"
}
}
}
},
"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 "
}
}
}
},
"/query-performance-factors": {
"get": {
"tags": [
"Account"
],
"summary": "Get query performance factors",
"description": "Gets a list of available [query performance factors](https://redis.io/docs/latest/operate/rc/databases/configuration/advanced-capabilities/#query-performance-factor).",
"operationId": "getSupportedSearchScalingFactors",
"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/SearchScalingFactorsData"
}
}
}
},
"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 "
}
}
}
},
"/payment-methods": {
"get": {
"tags": [
"Account"
],
"summary": "Get payment methods",
"description": "Gets a list of all payment methods for this account.",
"operationId": "getAccountPaymentMethods",
"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/PaymentMethods"
}
}
}
},
"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 "
}
}
}
},
"/logs": {
"get": {
"tags": [
"Account"
],
"summary": "Get system logs",
"description": "Gets [system logs](https://redis.io/docs/latest/operate/rc/api/examples/audit-system-logs/) for this account.",
"operationId": "getAccountSystemLogs",
"parameters": [
{
"name": "offset",
"in": "query",
"description": "Number of items to skip.",
"required": false,
"schema": {
"type": "integer",
"format": "int32"
},
"example": 0
},
{
"name": "limit",
"in": "query",
"description": "Maximum number of logs to return. Limit: 1000",
"required": false,
"schema": {
"maximum": 1000,
"minimum": 1,
"type": "integer",
"format": "int32"
},
"example": 100
},
{
"name": "startTime",
"in": "query",
"description": "Filter logs with time >= startTime (UTC)",
"required": false,
"schema": {
"type": "string"
},
"example": "2025-01-01T00:00:00Z"
},
{
"name": "endTime",
"in": "query",
"description": "Filter logs with time <= endTime (UTC)",
"required": false,
"schema": {
"type": "string"
},
"example": "2025-01-31T23:59:59Z"
},
{
"name": "resourceId",
"in": "query",
"description": "Filter logs by resourceId",
"required": false,
"schema": {
"type": "integer",
"format": "int32"
},
"example": 1234
}
],
"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/AccountSystemLogEntries"
}
}
}
},
"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/subscriptions/{subscriptionId}/databases/{databaseId}/traffic": {
"get": {
"tags": [
"Databases - Essentials"
],
"summary": "Get Essentials database traffic",
"description": "Gets traffic information for the specified Essentials database. If the database was not a source in a redirect endpoints operation, a not found error will be returned.",
"operationId": "getDatabaseTraffic_1",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"description": "Subscription ID.",
"required": true,
"schema": {
"minimum": 0,
"type": "integer",
"format": "int32"
}
},
{
"name": "databaseId",
"in": "path",
"description": "Database ID.",
"required": true,
"schema": {
"minimum": 0,
"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/DatabaseTrafficStateResponse"
}
}
}
},
"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/subscriptions/{subscriptionId}/databases/{databaseId}/slow-log": {
"get": {
"tags": [
"Databases - Essentials"
],
"summary": "Get Essentials database slow-log by database id",
"description": "Get slow-log for a specific database identified by Essentials subscription Id and database Id",
"operationId": "getSlowLog_1",
"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/DatabaseSlowLogEntries"
}
}
}
},
"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/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": [
"Subscriptions - Essentials"
],
"summary": "Get available Redis database versions for specific Essentials subscription",
"description": "Gets a list of all available Redis database versions for a specific Essentials subscription.",
"operationId": "getRedisVersions_1",
"parameters": [
{
"name": "subscriptionId",
"in": "query",
"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/RedisVersions"
}
}
}
},
"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/plans": {
"get": {
"tags": [
"Subscriptions - Essentials"
],
"summary": "Get Essentials plans",
"description": "Gets a list of Essentials plans. The plan describes the dataset size, cloud provider and region, and available database configuration options for an Essentials database.",
"operationId": "getAllFixedSubscriptionsPlans",
"parameters": [
{
"name": "provider",
"in": "query",
"description": "Returns plans supported by the specified Cloud Provider.",
"required": false,
"schema": {
"type": "string",
"enum": [
"AWS",
"GCP",
"AZURE"
]
}
},
{
"name": "redisFlex",
"in": "query",
"description": "Returns Redis Flex plans.",
"required": false,
"schema": {
"type": "boolean"
}
}
],
"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/FixedSubscriptionsPlans"
}
}
}
},
"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/plans/{planId}": {
"get": {
"tags": [
"Subscriptions - Essentials"
],
"summary": "Get a single Essentials plan",
"description": "Gets information on the specified Essentials plan.",
"operationId": "getFixedSubscriptionsPlanById",
"parameters": [
{
"name": "planId",
"in": "path",
"description": "Essentials plan 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/FixedSubscriptionsPlan"
}
}
}
},
"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/plans/subscriptions/{subscriptionId}": {
"get": {
"tags": [
"Subscriptions - Essentials"
],
"summary": "Get Essentials plans for a subscription",
"description": "Gets a list of compatible Essentials plans for the specified Essentials subscription.",
"operationId": "getFixedSubscriptionsPlansBySubscriptionId",
"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/FixedSubscriptionsPlans"
}
}
}
},
"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 "
}
}
}
},
"/database-modules": {
"get": {
"tags": [
"Account"
],
"summary": "Get advanced capabilities",
"description": "Gets a list of Redis [advanced capabilities](https://redis.io/docs/latest/operate/rc/databases/configuration/advanced-capabilities/) (also known as modules) available for databases prior to Redis 8. Advanced capability support may differ based on subscription and database settings.",
"operationId": "getSupportedDatabaseModules",
"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/ModulesData"
}
}
}
},
"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 "
}
}
}
},
"/data-persistence": {
"get": {
"tags": [
"Account"
],
"summary": "Get data persistence options",
"description": "Gets a list of all [data persistence](https://redis.io/docs/latest/operate/rc/databases/configuration/data-persistence/) options for this account.",
"operationId": "getDataPersistenceOptions",
"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/DataPersistenceOptions"
}
}
}
},
"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 "
}
}
}
},
"/cost-report/{costReportId}": {
"get": {
"tags": [
"Account"
],
"summary": "Get cost report",
"description": "Returns the generated cost report file in FOCUS format using the costReportId returned from the cost report generation task. The file is downloaded as an attachment with the filename set to the costReportId.",
"operationId": "getCostReport",
"parameters": [
{
"name": "costReportId",
"in": "path",
"description": "Cost Report ID. Returned from a Cost Report generation task.",
"required": true,
"schema": {
"type": "string"
},
"example": "cost-report-12345-abcdef"
}
],
"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": "Returns the cost report file",
"content": {
"application/octet-stream": {}
}
},
"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 "
}
}
}
},
"/": {
"get": {
"tags": [
"Account"
],
"summary": "Get current account",
"description": "Gets information on this account.",
"operationId": "getCurrentAccount",
"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/RootAccount"
}
}
}
},
"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 "
}
}
}
}
},
"components": {
"schemas": {
"TargetVersion": {
"type": "object",
"properties": {
"redisVersion": {
"type": "string"
}
}
},
"AclUserCreateRequest": {
"required": [
"name",
"password",
"role"
],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Access control user name.",
"example": "ACL-user-example"
},
"role": {
"type": "string",
"description": "Name of the database access role to assign to this user. Use GET '/acl/roles' to get a list of database access roles.",
"example": "ACL-role-example"
},
"password": {
"type": "string",
"description": "The database password for this user.",
"example": "ab123AB$%^"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "ACL user create request"
},
"AccountUserUpdateRequest": {
"required": [
"name"
],
"type": "object",
"properties": {
"userId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"name": {
"type": "string",
"description": "The account user's name.",
"example": "My new user name"
},
"role": {
"type": "string",
"description": "Changes the account user's role. See [Team management roles](https://redis.io/docs/latest/operate/rc/security/access-control/access-management/#team-management-roles) to learn about available account roles.",
"enum": [
"Owner",
"Member",
"Viewer",
"Logs Viewer (API use only)",
"Manager",
"Billing Admin"
]
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "User update request"
},
"BdbVersionUpgradeStatus": {
"type": "object",
"properties": {
"databaseId": {
"type": "integer",
"format": "int32"
},
"targetRedisVersion": {
"type": "string"
},
"progress": {
"type": "number",
"format": "double"
},
"upgradeStatus": {
"type": "string",
"enum": [
"in-progress",
"in-progress-recovery-pending",
"done",
"failed"
]
}
}
},
"PaymentMethods": {
"type": "object",
"properties": {
"accountId": {
"type": "integer",
"format": "int32"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"description": "RedisLabs Account payment methods",
"example": {
"accountId": 1001,
"paymentMethods": [
{
"id": 2,
"type": "Visa",
"creditCardEndsWith": "9349",
"nameOnCard": "CAPI User",
"expirationMonth": 2,
"expirationYear": 2026,
"links": []
}
]
}
},
"AclRoleDatabaseSpec": {
"required": [
"databaseId",
"subscriptionId"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"description": "Subscription ID for the database's subscription. Use 'GET /subscriptions' or 'GET /fixed/subscriptions' to get a list of available subscriptions and their IDs.",
"format": "int32"
},
"databaseId": {
"type": "integer",
"description": "The database's ID. Use 'GET /subscriptions/{subscriptionId}/databases' or 'GET /fixed/subscriptions/{subscriptionId}/databases' to get a list of databases in a subscription and their IDs.",
"format": "int32"
},
"regions": {
"type": "array",
"description": "(Active-Active databases only) Optional. A list of regions where this rule applies for this role.",
"example": [],
"items": {
"type": "string",
"description": "(Active-Active databases only) Optional. A list of regions where this rule applies for this role.",
"example": "[]"
}
}
},
"description": "A list of databases where the specified rule applies for this role."
},
"ActiveActiveTgwUpdateCidrsRequest": {
"type": "object",
"properties": {
"cidrs": {
"type": "array",
"description": "Optional. List of transit gateway attachment CIDRs.",
"example": [
"10.10.10.0/24",
"10.10.20.0/24"
],
"items": {
"$ref": "#/components/schemas/Cidr"
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Active active Transit Gateway update attachment cidr/s request message"
},
"RootAccount": {
"type": "object",
"properties": {
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"example": {
"account": {
"id": 1001,
"name": "Redis",
"createdTimestamp": "2018-12-23T15:15:31Z",
"updatedTimestamp": "2022-10-12T10:54:10Z",
"pocStatus": "inactive",
"marketplaceStatus": "active",
"key": {
"name": "capi-api-key-name",
"accountId": 1001,
"accountName": "Redis",
"allowedSourceIps": [
"0.0.0.0/0"
],
"createdTimestamp": "2022-05-11T12:05:47Z",
"owner": {
"name": "CAPI user",
"email": "capi.user@redis.com"
},
"userAccountId": 1,
"httpSourceIp": "79.0.0.173"
}
}
}
},
"PrivateLinkActiveActiveCreateRequest": {
"required": [
"principal",
"regionId",
"shareName",
"type"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"regionId": {
"type": "integer",
"description": "Deployment region id as defined by cloud provider",
"format": "int32",
"readOnly": true
},
"shareName": {
"maxLength": 64,
"minLength": 0,
"type": "string",
"description": "Name for the resource share",
"example": "my-private-link-share"
},
"principal": {
"type": "string",
"description": "AWS account ID or ARN of the principal (IAM user, role, or account)",
"example": "123456789012"
},
"type": {
"type": "string",
"description": "Type of the principal",
"example": "aws_account",
"enum": [
"aws_account",
"organization",
"organization_unit",
"iam_role",
"iam_user",
"service_principal"
]
},
"alias": {
"type": "string",
"description": "Alias or friendly name for the principal",
"example": "Production Account"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Request to create a private link for Active-Active subscription"
},
"ActiveActiveVpcPeeringCreateAwsRequest": {
"required": [
"awsAccountId",
"destinationRegion",
"sourceRegion",
"vpcId"
],
"type": "object",
"properties": {
"provider": {
"type": "string"
},
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"sourceRegion": {
"type": "string",
"description": "Name of region to create a VPC peering from."
},
"destinationRegion": {
"type": "string",
"description": "Name of region to create a VPC peering to.",
"example": "us-east-1"
},
"awsAccountId": {
"type": "string",
"description": "AWS Account ID.",
"example": "<aws-account-id>"
},
"vpcId": {
"type": "string",
"description": "VPC ID.",
"example": "<vpc-identifier>"
},
"vpcCidr": {
"type": "string",
"description": "Optional. VPC CIDR.",
"example": "<10.10.10.0/24>"
},
"vpcCidrs": {
"type": "array",
"description": "Optional. List of VPC CIDRs.",
"example": [
"<10.10.10.0/24>",
"<10.10.20.0/24>"
],
"items": {
"type": "string",
"description": "Optional. List of VPC CIDRs.",
"example": "[\"<10.10.10.0/24>\",\"<10.10.20.0/24>\"]"
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "VPC peering creation request message"
},
"SubscriptionUpdateRequest": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"name": {
"type": "string",
"description": "Optional. Updated subscription name.",
"example": "My new subscription name"
},
"paymentMethodId": {
"type": "integer",
"description": "Optional. The payment method ID you'd like to use for this subscription. Must be a valid payment method ID for this account. Use GET /payment-methods to get all payment methods for your account. This value is optional if \u2018paymentMethod\u2019 is \u2018marketplace\u2019, but required if 'paymentMethod' is 'credit-card'.",
"format": "int32"
},
"paymentMethod": {
"type": "string",
"description": "Optional. The payment method for the subscription. If set to \u2018credit-card\u2019 , \u2018paymentMethodId\u2019 must be defined.",
"enum": [
"credit-card",
"marketplace"
]
},
"publicEndpointAccess": {
"type": "boolean",
"description": "Optional. When 'false', all databases on this subscription will reject any connection attempt to the public endpoint and any connection attempt to the private endpoint that does not come from an IP address in the private address space defined in [RFC 1918](https://datatracker.ietf.org/doc/html/rfc1918#section-3 ). You must use a [private connectivity method](https://redis.io/docs/latest/operate/rc/security/database-security/block-public-endpoints/#private-connectivity-methods ) to connect to a database with a blocked public endpoint."
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Subscription update request message"
},
"DatabaseTagUpdateRequest": {
"required": [
"value"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"databaseId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"key": {
"type": "string",
"readOnly": true
},
"value": {
"type": "string",
"description": "Database tag value"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Database tag update request message"
},
"ActiveActivePscEndpointCreateRequest": {
"required": [
"endpointConnectionName",
"gcpProjectId",
"gcpVpcName",
"gcpVpcSubnetName",
"pscServiceId",
"regionId",
"subscriptionId"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"pscServiceId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"regionId": {
"type": "integer",
"description": "Deployment region id as defined by cloud provider",
"format": "int32",
"readOnly": true,
"example": 27
},
"gcpProjectId": {
"type": "string",
"description": "Google Cloud project ID.",
"example": "my-gcp-project"
},
"gcpVpcName": {
"type": "string",
"description": "Name of the Google Cloud VPC that hosts your application.",
"example": "my-vpc"
},
"gcpVpcSubnetName": {
"type": "string",
"description": "Name of your VPC's subnet of IP address ranges.",
"example": "my-vpc-subnet"
},
"endpointConnectionName": {
"type": "string",
"description": "Prefix used to create PSC endpoints in the consumer application VPC. Endpoint names appear in Google Cloud as endpoint name prefix + endpoint number.",
"example": "my-endpoint-connection"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Private Service Connect endpoint create request"
},
"TaskStateUpdate": {
"type": "object",
"properties": {
"taskId": {
"type": "string",
"format": "uuid"
},
"commandType": {
"type": "string"
},
"status": {
"type": "string",
"enum": [
"initialized",
"received",
"processing-in-progress",
"processing-completed",
"processing-error"
]
},
"description": {
"type": "string"
},
"timestamp": {
"type": "string",
"format": "date-time"
},
"response": {
"$ref": "#/components/schemas/ProcessorResponse"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
}
},
"Database": {
"type": "object",
"properties": {
"databaseId": {
"type": "integer",
"format": "int32"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"example": {
"databaseId": 1,
"name": "DB-RCP-2-81-7",
"protocol": "redis",
"provider": "AWS",
"region": "us-east-1",
"redisVersion": "7.4",
"respVersion": "resp3",
"status": "active",
"datasetSizeInGb": 2,
"memoryUsedInMb": 4,
"memoryStorage": "ram",
"supportOSSClusterApi": true,
"useExternalEndpointForOSSClusterApi": true,
"dataPersistence": "snapshot-every-1-hour",
"replication": false,
"dataEvictionPolicy": "noeviction",
"throughputMeasurement": {
"by": "operations-per-second",
"value": 2500
},
"activatedOn": "2021-08-29T13:03:08Z",
"lastModified": "2021-08-29T13:03:08Z",
"publicEndpoint": "redis-17571.c235866.us-east-1-1.ec2.qa-cloud.rlrcp.com:17571",
"privateEndpoint": "redis-17571.internal.c235866.us-east-1-1.ec2.qa-cloud.rlrcp.com:17571",
"replica": {
"syncSources": [
{
"endpoint": "redis://localhost:6379",
"encryption": true,
"clientCert": "-----BEGIN CERTIFICATE-----\n ... -----END CERTIFICATE-----"
}
]
},
"clustering": {
"numberOfShards": 1,
"regexRules": [
{
"ordinal": 1,
"pattern": "(?<tag>.*)"
},
{
"ordinal": 0,
"pattern": ".*\\{(?<tag>.*)\\}.*"
}
],
"hashingPolicy": "standard"
},
"security": {
"enableDefaultUser": true,
"password": "redis123456redis",
"sslClientAuthentication": false,
"tlsClientAuthentication": false,
"enableTls": false,
"sourceIps": [
"0.0.0.0/0"
]
},
"modules": [
{
"id": 18536,
"name": "RedisJSON",
"capabilityName": "JSON",
"version": "2.0.6",
"description": "Native JSON Data Type for Redis, allowing for atomic reads and writes of sub-elements",
"parameters": []
}
],
"alerts": [],
"links": [
{
"rel": "self",
"href": "https://api-cloudapi.qa.redislabs.com/v1/subscriptions/120416/databases/51170941",
"type": "GET"
}
]
}
},
"SubscriptionDatabaseSpec": {
"required": [
"name",
"protocol"
],
"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"
},
"protocol": {
"type": "string",
"description": "Optional. Database protocol. Only set to 'memcached' if you have a legacy application. Default: 'redis'",
"enum": [
"redis",
"memcached"
]
},
"port": {
"type": "integer",
"description": "Optional. TCP port on which the database is available (10000-19999). Generated automatically if not set.",
"format": "int32",
"example": 10000
},
"memoryLimitInGb": {
"minimum": 0.1,
"exclusiveMinimum": false,
"type": "number",
"description": "Optional. Total memory in GB, including replication and other overhead. You cannot set both datasetSizeInGb and totalMemoryInGb.",
"format": "double",
"example": 1,
"deprecated": true
},
"datasetSizeInGb": {
"minimum": 0.1,
"exclusiveMinimum": false,
"type": "number",
"description": "Optional. The maximum amount of data in the dataset for this database in GB. You cannot set both datasetSizeInGb and totalMemoryInGb. If \u2018replication\u2019 is 'true', the database\u2019s total memory will be twice as large as the datasetSizeInGb.If \u2018replication\u2019 is false, the database\u2019s total memory will be the datasetSizeInGb value.",
"format": "double",
"example": 1
},
"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
},
"dataPersistence": {
"type": "string",
"description": "Optional. Type and rate of data persistence in persistent storage. Default: 'none'",
"enum": [
"none",
"aof-every-1-second",
"aof-every-write",
"snapshot-every-1-hour",
"snapshot-every-6-hours",
"snapshot-every-12-hours"
]
},
"replication": {
"type": "boolean",
"description": "Optional. Databases replication. Default: 'true'"
},
"throughputMeasurement": {
"$ref": "#/components/schemas/DatabaseThroughputSpec"
},
"localThroughputMeasurement": {
"type": "array",
"description": "Optional. Expected throughput per region for an Active-Active database. Default: 1000 read and write ops/sec for each region",
"items": {
"$ref": "#/components/schemas/LocalThroughput"
}
},
"modules": {
"type": "array",
"description": "Optional. Redis advanced capabilities (also known as modules) to be provisioned in the database. Use GET /database-modules to get a list of available advanced capabilities. Don't specify modules for database versions 8 and above. All capabilities are bundled in the database by default.",
"items": {
"$ref": "#/components/schemas/DatabaseModuleSpec"
}
},
"quantity": {
"type": "integer",
"description": "Optional. Number of databases that will be created with these settings. Default: 1",
"format": "int32",
"example": 1
},
"averageItemSizeInBytes": {
"type": "integer",
"description": "Optional. Relevant only to ram-and-flash (also known as Redis-Flex/Auto-Tiering) subscriptions. Estimated average size in bytes of the items stored in the database. Default: 1000",
"format": "int64",
"deprecated": true
},
"ramPercentage": {
"type": "integer",
"description": "Optional. Relevant only to ram-and-flash (also known as Redis-Flex/Auto-Tiering) subscriptions. The percentage of data to be stored in RAM. Must be between 10 and 50 in steps of 10 (10, 20, 30, 40, 50). Default: 20",
"format": "int32",
"example": 20
},
"respVersion": {
"type": "string",
"description": "Optional. Redis Serialization Protocol version. Must be compatible with Redis version.",
"example": "resp3",
"enum": [
"resp2",
"resp3"
]
},
"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"
},
"autoMinorVersionUpgrade": {
"type": "boolean",
"description": "Optional. Automatically upgrades the database to newer minor versions within the same major release. Applies to version 8.4 and above. Default: true."
},
"shardingType": {
"type": "string",
"description": "Optional. Database [Hashing policy](https://redis.io/docs/latest/operate/rc/databases/configuration/clustering/#manage-the-hashing-policy).",
"enum": [
"default-regex-rules",
"custom-regex-rules",
"redis-oss-hashing"
]
},
"queryPerformanceFactor": {
"type": "string",
"description": "Optional. The query performance factor adds extra compute power specifically for search and query databases. You can increase your queries per second by the selected factor.",
"example": "2x"
}
},
"description": "One or more database specification(s) to create in this subscription."
},
"Subscription": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string"
},
"paymentMethodId": {
"type": "integer",
"format": "int32"
},
"status": {
"type": "string"
},
"publicEndpointAccess": {
"type": "boolean"
},
"memoryStorage": {
"type": "string",
"enum": [
"ram",
"ram-and-flash"
]
},
"numberOfDatabases": {
"type": "integer",
"format": "int32"
},
"paymentMethodType": {
"type": "string",
"enum": [
"credit-card",
"marketplace"
]
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"persistentStorageEncryptionType": {
"type": "string"
},
"deletionGracePeriod": {
"type": "string"
},
"customerManagedKeyAccessDetails": {
"$ref": "#/components/schemas/CustomerManagedKeyAccessDetails"
}
},
"description": "RedisLabs Subscription information",
"example": {
"id": 1206,
"name": "updated new name",
"status": "active",
"deploymentType": "single-region",
"paymentMethodId": 2,
"publicEndpointAccess": true,
"memoryStorage": "ram",
"numberOfDatabases": 6,
"paymentMethodType": "credit-card",
"storageEncryption": false,
"subscriptionPricing": [
{
"type": "Shards",
"typeDetails": "high-throughput",
"quantity": 7,
"quantityMeasurement": "shards",
"pricePerUnit": 0.124,
"priceCurrency": "USD",
"pricePeriod": "hour"
}
],
"cloudDetails": [
{
"provider": "AWS",
"cloudAccountId": 2,
"totalSizeInGb": 0.0272,
"regions": [
{
"region": "us-east-1",
"networking": [
{
"deploymentCIDR": "10.0.0.0/24",
"subnetId": "subnet-009ce004ed90da8a6"
}
],
"preferredAvailabilityZones": [
"us-east-1a"
],
"multipleAvailabilityZones": false
}
],
"links": []
}
],
"links": [
{
"rel": "self",
"href": "https://api-cloudapi.qa.redislabs.com/v1/subscriptions/120416",
"type": "GET"
}
]
}
},
"CidrWhiteListUpdateRequest": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"cidrIps": {
"type": "array",
"description": "List of CIDR values. Example: ['10.1.1.0/32']",
"items": {
"type": "string",
"description": "List of CIDR values. Example: ['10.1.1.0/32']"
}
},
"securityGroupIds": {
"type": "array",
"description": "List of AWS Security group IDs.",
"items": {
"type": "string",
"description": "List of AWS Security group IDs."
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Update Pro subscription"
},
"FixedDatabaseCreateRequest": {
"required": [
"name"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"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-Essentials-database-example"
},
"protocol": {
"type": "string",
"description": "Optional. Database protocol. Use 'stack' to get all of Redis' advanced capabilities. Only use 'redis' for Pay-as-you-go or Redis Flex subscriptions. Default: 'stack' for most subscriptions, 'redis' for Redis Flex subscriptions.",
"enum": [
"redis",
"memcached",
"stack"
]
},
"memoryLimitInGb": {
"minimum": 0.1,
"exclusiveMinimum": false,
"type": "number",
"description": "(Pay-as-you-go subscriptions only) Optional. Total memory in GB, including replication and other overhead. You cannot set both datasetSizeInGb and totalMemoryInGb.",
"format": "double",
"example": 1,
"deprecated": true
},
"datasetSizeInGb": {
"minimum": 0.1,
"exclusiveMinimum": false,
"type": "number",
"description": "(Pay-as-you-go subscriptions only) Optional. The maximum amount of data in the dataset for this database in GB. You cannot set both datasetSizeInGb and totalMemoryInGb. If \u2018replication\u2019 is 'true', the database\u2019s total memory will be twice as large as the datasetSizeInGb. If \u2018replication\u2019 is false, the database\u2019s total memory will be the datasetSizeInGb value.",
"format": "double",
"example": 1
},
"supportOSSClusterApi": {
"type": "boolean",
"description": "(Pay-as-you-go subscriptions only) Optional. Support Redis [OSS Cluster API](https://redis.io/docs/latest/operate/rc/databases/configuration/clustering/#oss-cluster-api). Default: 'false'",
"example": true
},
"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 /fixed/redis-versions')",
"example": "7.4"
},
"respVersion": {
"type": "string",
"description": "Optional. Redis Serialization Protocol version. Must be compatible with Redis version.",
"example": "resp3",
"enum": [
"resp2",
"resp3"
]
},
"useExternalEndpointForOSSClusterApi": {
"type": "boolean",
"description": "(Pay-as-you-go subscriptions only) Optional. If set to 'true', the database will use the external endpoint for OSS Cluster API. This setting blocks the database's private endpoint. Can only be set if 'supportOSSClusterAPI' is 'true'. Default: 'false'",
"example": true
},
"enableDatabaseClustering": {
"type": "boolean",
"description": "(Pay-as-you-go subscriptions only) Optional. Distributes database data to different cloud instances. Default: 'false'",
"example": false
},
"numberOfShards": {
"type": "integer",
"description": "(Pay-as-you-go subscriptions only) Optional. Specifies the number of master shards.",
"format": "int32",
"example": 2
},
"dataPersistence": {
"type": "string",
"description": "Optional. Type and rate of data persistence in persistent storage. Use GET /fixed/plans/{planId} to see if your plan supports data persistence.",
"enum": [
"none",
"aof-every-1-second",
"aof-every-write",
"snapshot-every-1-hour",
"snapshot-every-6-hours",
"snapshot-every-12-hours"
]
},
"dataEvictionPolicy": {
"type": "string",
"description": "Optional. Data eviction policy.",
"enum": [
"allkeys-lru",
"allkeys-lfu",
"allkeys-lrm",
"allkeys-random",
"volatile-lru",
"volatile-lfu",
"volatile-lrm",
"volatile-random",
"volatile-ttl",
"noeviction"
]
},
"replication": {
"type": "boolean",
"description": "Optional. Sets database replication. Use GET /fixed/plans/{planId} to see if your plan supports database replication."
},
"periodicBackupPath": {
"type": "string",
"description": "Optional. The path to a backup storage location. If specified, the database will back up every 24 hours to this location, and you can manually back up the database to this location at any time. Use GET /fixed/plans/{planId} to see if your plan supports database backups.",
"example": "s3://<backup-path>"
},
"sourceIps": {
"type": "array",
"description": "Optional. List of source IP addresses or subnet masks to allow. If specified, Redis clients will be able to connect to this database only from within the specified source IP addresses ranges. Use GET /fixed/plans/{planId} to see how many CIDR allow rules your plan supports. Example: '['192.168.10.0/32', '192.168.12.0/24']'",
"items": {
"type": "string",
"description": "Optional. List of source IP addresses or subnet masks to allow. If specified, Redis clients will be able to connect to this database only from within the specified source IP addresses ranges. Use GET /fixed/plans/{planId} to see how many CIDR allow rules your plan supports. Example: '['192.168.10.0/32', '192.168.12.0/24']'"
}
},
"regexRules": {
"type": "array",
"description": "(Pay-as-you-go subscriptions only) Optional. Hashing policy Regex rules. Used only if 'enableDatabaseClustering' is set to 'true' and .",
"items": {
"type": "string",
"description": "(Pay-as-you-go subscriptions only) Optional. Hashing policy Regex rules. Used only if 'enableDatabaseClustering' is set to 'true' and ."
}
},
"replicaOf": {
"type": "array",
"description": "Optional. This database will be a replica of the specified Redis databases provided as one or more URI(s). Example: 'redis://user:password@host:port'. If the URI provided is a Redis Cloud database, only host and port should be provided. Example: ['redis://endpoint1:6379', 'redis://endpoint2:6380'].",
"deprecated": true,
"items": {
"type": "string",
"description": "Optional. This database will be a replica of the specified Redis databases provided as one or more URI(s). Example: 'redis://user:password@host:port'. If the URI provided is a Redis Cloud database, only host and port should be provided. Example: ['redis://endpoint1:6379', 'redis://endpoint2:6380']."
}
},
"replica": {
"$ref": "#/components/schemas/ReplicaOfSpec"
},
"clientSslCertificate": {
"type": "string",
"description": "Optional. A public key client TLS/SSL certificate with new line characters replaced with '\\n'. If specified, mTLS authentication will be required to authenticate user connections. Default: 'null'",
"deprecated": true
},
"clientTlsCertificates": {
"type": "array",
"description": "Optional. A list of client TLS/SSL certificates. If specified, mTLS authentication will be required to authenticate user connections.",
"items": {
"$ref": "#/components/schemas/DatabaseCertificateSpec"
}
},
"enableTls": {
"type": "boolean",
"description": "Optional. When 'true', requires TLS authentication for all connections - mTLS with valid clientTlsCertificates, regular TLS when clientTlsCertificates is not provided. Default: 'false'"
},
"password": {
"type": "string",
"description": "Optional. Password to access the database. If not set, a random 32-character alphanumeric password will be automatically generated."
},
"alerts": {
"type": "array",
"description": "Optional. Redis database alert details.",
"items": {
"$ref": "#/components/schemas/DatabaseAlertSpec"
}
},
"modules": {
"type": "array",
"description": "Optional. Redis advanced capabilities (also known as modules) to be provisioned in the database. Use GET /database-modules to get a list of available advanced capabilities. Can only be set if 'protocol' is 'redis'. Don't specify modules for database versions 8 and above. All capabilities are bundled in the database by default.",
"items": {
"$ref": "#/components/schemas/DatabaseModuleSpec"
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Essentials database definition"
},
"DatabaseUpdateRequest": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"databaseId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"dryRun": {
"type": "boolean",
"description": "Optional. When 'false': Creates a deployment plan and deploys it, updating any resources required by the plan. When 'true': creates a read-only deployment plan and does not update any resources. Default: 'false'",
"example": false
},
"name": {
"type": "string",
"description": "Optional. Updated database name.",
"example": "Redis-database-example-updated"
},
"memoryLimitInGb": {
"minimum": 0.1,
"exclusiveMinimum": false,
"type": "number",
"description": "Optional. Total memory in GB, including replication and other overhead. You cannot set both datasetSizeInGb and totalMemoryInGb.",
"format": "double",
"example": 1,
"deprecated": true
},
"datasetSizeInGb": {
"minimum": 0.1,
"exclusiveMinimum": false,
"type": "number",
"description": "Optional. The maximum amount of data in the dataset for this database in GB. You cannot set both datasetSizeInGb and totalMemoryInGb. If \u2018replication\u2019 is 'true', the database\u2019s total memory will be twice as large as the datasetSizeInGb.If \u2018replication\u2019 is false, the database\u2019s total memory will be the datasetSizeInGb value.",
"format": "double",
"example": 1
},
"respVersion": {
"type": "string",
"description": "Optional. Redis Serialization Protocol version. Must be compatible with Redis version.",
"example": "resp3",
"enum": [
"resp2",
"resp3"
]
},
"throughputMeasurement": {
"$ref": "#/components/schemas/DatabaseThroughputSpec"
},
"dataPersistence": {
"type": "string",
"description": "Optional. Type and rate of data persistence in persistent storage.",
"enum": [
"none",
"aof-every-1-second",
"aof-every-write",
"snapshot-every-1-hour",
"snapshot-every-6-hours",
"snapshot-every-12-hours"
]
},
"dataEvictionPolicy": {
"type": "string",
"description": "Optional. Data eviction policy.",
"enum": [
"allkeys-lru",
"allkeys-lfu",
"allkeys-lrm",
"allkeys-random",
"volatile-lru",
"volatile-lfu",
"volatile-lrm",
"volatile-random",
"volatile-ttl",
"noeviction"
]
},
"replication": {
"type": "boolean",
"description": "Optional. Turns database replication on or off."
},
"regexRules": {
"type": "array",
"description": "Optional. Hashing policy Regex rules. Used only if 'shardingType' is 'custom-regex-rules'.",
"items": {
"type": "string",
"description": "Optional. Hashing policy Regex rules. Used only if 'shardingType' is 'custom-regex-rules'."
}
},
"replicaOf": {
"type": "array",
"description": "Optional. This database will be a replica of the specified Redis databases provided as one or more URI(s). Example: 'redis://user:password@host:port'. If the URI provided is a Redis Cloud database, only host and port should be provided. Example: ['redis://endpoint1:6379', 'redis://endpoint2:6380'].",
"deprecated": true,
"items": {
"type": "string",
"description": "Optional. This database will be a replica of the specified Redis databases provided as one or more URI(s). Example: 'redis://user:password@host:port'. If the URI provided is a Redis Cloud database, only host and port should be provided. Example: ['redis://endpoint1:6379', 'redis://endpoint2:6380']."
}
},
"replica": {
"$ref": "#/components/schemas/ReplicaOfSpec"
},
"supportOSSClusterApi": {
"type": "boolean",
"description": "Optional. Support Redis [OSS Cluster API](https://redis.io/docs/latest/operate/rc/databases/configuration/clustering/#oss-cluster-api).",
"example": false
},
"useExternalEndpointForOSSClusterApi": {
"type": "boolean",
"description": "Optional. If set to 'true', the database will use the external endpoint for OSS Cluster API. This setting blocks the database's private endpoint. Can only be set if 'supportOSSClusterAPI' is 'true'.",
"example": false
},
"password": {
"type": "string",
"description": "Optional. Changes the password used to access the database with the 'default' user. Can only be set if 'protocol' is 'redis'.",
"example": "P@ssw0rd"
},
"saslUsername": {
"type": "string",
"description": "Optional. Changes the Memcached (SASL) username to access the database. Can only be set if 'protocol' is 'memcached'.",
"example": "mc-HR7gb"
},
"saslPassword": {
"type": "string",
"description": "Optional. Changes the Memcached (SASL) password to access the database. Can only be set if 'protocol' is 'memcached'.",
"example": "7igza2WZ0UPgMyqjsxuIZtla8xBdzkJT"
},
"sourceIp": {
"type": "array",
"description": "Optional. List of source IP addresses or subnet masks to allow. If specified, Redis clients will be able to connect to this database only from within the specified source IP addresses ranges. Example: '['192.168.10.0/32', '192.168.12.0/24']'",
"items": {
"type": "string",
"description": "Optional. List of source IP addresses or subnet masks to allow. If specified, Redis clients will be able to connect to this database only from within the specified source IP addresses ranges. Example: '['192.168.10.0/32', '192.168.12.0/24']'"
}
},
"clientSslCertificate": {
"type": "string",
"description": "Optional. A public key client TLS/SSL certificate with new line characters replaced with '\\n'. If specified, mTLS authentication will be required to authenticate user connections if it is not already required. If set to an empty string, TLS client certificates will be removed and mTLS will not be required. TLS connection may still apply, depending on the value of 'enableTls'.",
"deprecated": true
},
"clientTlsCertificates": {
"type": "array",
"description": "Optional. A list of client TLS/SSL certificates. If specified, mTLS authentication will be required to authenticate user connections. If set to an empty list, TLS client certificates will be removed and mTLS will not be required. TLS connection may still apply, depending on the value of 'enableTls'.",
"items": {
"$ref": "#/components/schemas/DatabaseCertificateSpec"
}
},
"enableTls": {
"type": "boolean",
"description": "Optional. When 'true', requires TLS authentication for all connections - mTLS with valid clientTlsCertificates, regular TLS when clientTlsCertificates is not provided. If enableTls is set to 'false' while mTLS is required, it will remove the mTLS requirement and erase previously provided clientTlsCertificates."
},
"enableDefaultUser": {
"type": "boolean",
"description": "Optional. When 'true', allows connecting to the database with the 'default' user. When 'false', only defined access control users can connect to the database. Can only be set if 'protocol' is 'redis'."
},
"periodicBackupPath": {
"type": "string",
"description": "Optional. Changes the backup location path. If specified, the database will back up every 24 hours to this location, and you can manually back up the database to this location at any time. If set to an empty string, the backup path will be removed.",
"example": "s3://<backup-path>",
"deprecated": true
},
"remoteBackup": {
"$ref": "#/components/schemas/DatabaseBackupConfig"
},
"alerts": {
"type": "array",
"description": "Optional. Changes Redis database alert details.",
"items": {
"$ref": "#/components/schemas/DatabaseAlertSpec"
}
},
"ramPercentage": {
"type": "integer",
"description": "Optional. Relevant only to ram-and-flash (also known as Redis-Flex/Auto-Tiering) subscriptions. The percentage of data to be stored in RAM. Must be between 10 and 50 in steps of 10 (10, 20, 30, 40, 50).",
"format": "int32",
"example": 20
},
"autoMinorVersionUpgrade": {
"type": "boolean",
"description": "Optional. Automatically upgrades the database to newer minor versions within the same major release. Applies to version 8.4 and above."
},
"commandType": {
"type": "string",
"readOnly": true
},
"queryPerformanceFactor": {
"type": "string",
"description": "Optional. Changes the query performance factor. The query performance factor adds extra compute power specifically for search and query databases. You can increase your queries per second by the selected factor.",
"example": "2x"
}
},
"description": "Database update request"
},
"LocalRegionProperties": {
"type": "object",
"properties": {
"region": {
"type": "string",
"description": "Required. Name of the region to update."
},
"remoteBackup": {
"$ref": "#/components/schemas/DatabaseBackupConfig"
},
"localThroughputMeasurement": {
"$ref": "#/components/schemas/LocalThroughput"
},
"dataPersistence": {
"type": "string",
"description": "Optional. Type and rate of data persistence for this region. If set, 'globalDataPersistence' will not apply to this region.",
"enum": [
"none",
"aof-every-1-second",
"aof-every-write",
"snapshot-every-1-hour",
"snapshot-every-6-hours",
"snapshot-every-12-hours"
]
},
"password": {
"type": "string",
"description": "Optional. Changes the password used to access the database in this region. If set, 'globalPassword' will not apply to this region.",
"example": "P@ssw0rd"
},
"sourceIp": {
"type": "array",
"description": "Optional. List of source IP addresses or subnet masks to whitelist in this region. If set, Redis clients will be able to connect to the database in this region only from within the specified source IP addresses ranges, and 'globalSourceIp' will not apply to this region. Example: ['192.168.10.0/32', '192.168.12.0/24']",
"items": {
"type": "string",
"description": "Optional. List of source IP addresses or subnet masks to whitelist in this region. If set, Redis clients will be able to connect to the database in this region only from within the specified source IP addresses ranges, and 'globalSourceIp' will not apply to this region. Example: ['192.168.10.0/32', '192.168.12.0/24']"
}
},
"alerts": {
"type": "array",
"description": "Optional. Redis database alert settings for this region. If set, 'glboalAlerts' will not apply to this region.",
"items": {
"$ref": "#/components/schemas/DatabaseAlertSpec"
}
},
"respVersion": {
"type": "string",
"description": "Optional. Redis Serialization Protocol version for this region. Must be compatible with Redis version.",
"example": "resp3",
"enum": [
"resp2",
"resp3"
]
},
"enableDefaultUser": {
"type": "boolean",
"description": "Optional. When 'true', allows connecting to the database with the 'default' user. When 'false', only defined access control users can connect to the database. If set, 'globalEnableDefaultUser' will not apply to this region."
}
},
"description": "Optional. A list of regions and local settings to update."
},
"PscEndpointCreateRequest": {
"required": [
"endpointConnectionName",
"gcpProjectId",
"gcpVpcName",
"gcpVpcSubnetName",
"pscServiceId",
"subscriptionId"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"pscServiceId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"gcpProjectId": {
"type": "string",
"description": "Google Cloud project ID.",
"example": "my-gcp-project"
},
"gcpVpcName": {
"type": "string",
"description": "Name of the Google Cloud VPC that hosts your application.",
"example": "my-vpc"
},
"gcpVpcSubnetName": {
"type": "string",
"description": "Name of your VPC's subnet of IP address ranges.",
"example": "my-vpc-subnet"
},
"endpointConnectionName": {
"type": "string",
"description": "Prefix used to create PSC endpoints in the consumer application VPC. Endpoint names appear in Google Cloud as endpoint name prefix + endpoint number.",
"example": "my-endpoint-connection"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Private Service Connect endpoint create request"
},
"ActiveActiveVpcPeeringCreateBaseRequest": {
"required": [
"sourceRegion"
],
"type": "object",
"properties": {
"provider": {
"type": "string"
},
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"sourceRegion": {
"type": "string",
"description": "Name of region to create a VPC peering from."
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Active-Active VPC peering creation request message",
"oneOf": [
{
"$ref": "#/components/schemas/ActiveActiveVpcPeeringCreateAwsRequest"
},
{
"$ref": "#/components/schemas/ActiveActiveVpcPeeringCreateGcpRequest"
}
]
},
"BaseSubscriptionUpdateRequest": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Subscription update request message",
"oneOf": [
{
"$ref": "#/components/schemas/SubscriptionUpdateRequest"
},
{
"$ref": "#/components/schemas/SubscriptionUpdateCMKRequest"
}
]
},
"Regions": {
"type": "object",
"properties": {
"regions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Region"
}
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"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"
},
{
"id": 7,
"name": "sa-east-1",
"provider": "AWS"
},
{
"id": 63,
"name": "ca-central-1",
"provider": "AWS"
},
{
"id": 62,
"name": "eu-north-1",
"provider": "AWS"
},
{
"id": 61,
"name": "eu-west-3",
"provider": "AWS"
},
{
"id": 60,
"name": "eu-west-2",
"provider": "AWS"
},
{
"id": 59,
"name": "us-east-2",
"provider": "AWS"
},
{
"id": 64,
"name": "ap-east-1",
"provider": "AWS"
},
{
"id": 146,
"name": "ap-southeast-5",
"provider": "AWS"
},
{
"id": 30,
"name": "ap-south-1",
"provider": "AWS"
},
{
"id": 117,
"name": "ap-northeast-3",
"provider": "AWS"
},
{
"id": 116,
"name": "ap-northeast-2",
"provider": "AWS"
},
{
"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"
},
{
"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"
}
]
}
},
"FixedSubscriptionsPlans": {
"type": "object",
"properties": {
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"description": "Redis list of Essentials subscriptions plans",
"example": {
"plans": [
{
"id": 98183,
"name": "Multi-AZ 5GB",
"size": 5,
"sizeMeasurementUnit": "GB",
"provider": "AWS",
"region": "us-east-1",
"regionId": 1,
"price": 100,
"priceCurrency": "USD",
"pricePeriod": "Month",
"maximumDatabases": 1,
"availability": "Multi-zone",
"connections": "unlimited",
"cidrAllowRules": 16,
"supportDataPersistence": true,
"supportInstantAndDailyBackups": true,
"supportReplication": true,
"supportClustering": false,
"supportSsl": true,
"supportedAlerts": [
"datasets-size",
"latency",
"throughput-lower-than",
"throughput-higher-than"
],
"customerSupport": "Standard",
"links": []
},
{
"id": 98181,
"name": "Multi-AZ 1GB",
"size": 1,
"sizeMeasurementUnit": "GB",
"provider": "AWS",
"region": "us-east-1",
"regionId": 1,
"price": 22,
"priceCurrency": "USD",
"pricePeriod": "Month",
"maximumDatabases": 1,
"availability": "Multi-zone",
"connections": "1024",
"cidrAllowRules": 8,
"supportDataPersistence": true,
"supportInstantAndDailyBackups": true,
"supportReplication": true,
"supportClustering": false,
"supportSsl": true,
"supportedAlerts": [
"datasets-size",
"throughput-higher-than",
"throughput-lower-than",
"latency",
"connections-limit"
],
"customerSupport": "Standard",
"links": []
}
],
"links": [
{
"rel": "self",
"href": "http://localhost:8081/v1/fixed/plans?cloud_provider=AWS",
"type": "GET"
}
]
}
},
"ActiveActiveVpcPeeringUpdateAwsRequest": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"vpcPeeringId": {
"type": "integer",
"description": "VPC Peering id to update.",
"format": "int32",
"readOnly": true
},
"vpcCidr": {
"type": "string",
"description": "Optional. VPC CIDR.",
"example": "<10.10.10.0/24>"
},
"vpcCidrs": {
"type": "array",
"description": "Optional. List of VPC CIDRs.",
"example": [
"<10.10.10.0/24>",
"<10.10.22.0/24>"
],
"items": {
"type": "string",
"description": "Optional. List of VPC CIDRs.",
"example": "[\"<10.10.10.0/24>\",\"<10.10.22.0/24>\"]"
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Active-Active VPC peering update request message"
},
"DatabaseTrafficStateResponse": {
"type": "object",
"properties": {
"bdbId": {
"type": "integer",
"format": "int32"
},
"trafficStatus": {
"type": "string"
},
"canResume": {
"type": "boolean"
},
"resumeInProgress": {
"type": "boolean"
},
"stopReason": {
"type": "string"
},
"resumeEligibleAt": {
"type": "string",
"format": "date-time"
}
}
},
"DataPersistenceEntry": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"description": {
"type": "string"
}
},
"description": "RedisLabs data persistence information"
},
"CloudAccounts": {
"type": "object",
"properties": {
"accountId": {
"type": "integer",
"format": "int32"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"description": "RedisLabs Cloud Accounts information",
"example": {
"accountId": 40131,
"cloudAccounts": [
{
"id": 1,
"name": "Redis Internal Resources",
"provider": "AWS",
"status": "active",
"links": []
},
{
"id": 2,
"name": "CAPI User ",
"provider": "AWS",
"status": "active",
"accessKeyId": "A***A",
"links": []
},
{
"id": 3,
"name": "API Cloud account",
"provider": "AWS",
"status": "active",
"accessKeyId": "A***4",
"links": []
}
],
"links": [
{
"rel": "self",
"href": "https://api-cloudapi.qa.redislabs.com/v1/cloud-accounts",
"type": "GET"
}
]
}
},
"PrivateLinkActiveActivePrincipalsCreateRequest": {
"required": [
"principal",
"regionId"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"regionId": {
"type": "integer",
"description": "Deployment region id as defined by cloud provider",
"format": "int32",
"readOnly": true
},
"principal": {
"type": "string",
"description": "AWS account ID or ARN of the principal (IAM user, role, or account)",
"example": "123456789012"
},
"type": {
"type": "string",
"description": "Type of the principal",
"example": "aws_account",
"enum": [
"aws_account",
"organization",
"organization_unit",
"iam_role",
"iam_user",
"service_principal"
]
},
"alias": {
"type": "string",
"description": "Alias or friendly name for the principal",
"example": "Production Account"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Request to add a principal to private link for Active-Active subscription"
},
"PrivateLinkActiveActiveConnectionsDisassociateRequest": {
"required": [
"connections"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"regionId": {
"type": "integer",
"description": "Deployment region id as defined by cloud provider",
"format": "int32",
"readOnly": true
},
"connections": {
"type": "array",
"description": "List of connections to disassociate from the private link. Each connection must include associationId, type, and principalId.",
"items": {
"$ref": "#/components/schemas/PrivateLinkConnectionDisassociate"
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Request to disassociate connections from private link for Active-Active subscription"
},
"VpcPeeringUpdateAwsRequest": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"vpcPeeringId": {
"type": "integer",
"description": "VPC Peering ID to update.",
"format": "int32",
"readOnly": true
},
"vpcCidr": {
"type": "string",
"description": "Optional. VPC CIDR.",
"example": "<10.10.10.0/24>"
},
"vpcCidrs": {
"type": "array",
"description": "Optional. List of VPC CIDRs.",
"example": [
"<10.10.10.0/24>",
"<10.10.20.0/24>"
],
"items": {
"type": "string",
"description": "Optional. List of VPC CIDRs.",
"example": "[\"<10.10.10.0/24>\",\"<10.10.20.0/24>\"]"
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "VPC peering update request message"
},
"FixedSubscriptions": {
"type": "object",
"properties": {
"accountId": {
"type": "integer",
"format": "int32"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"description": "Redis list of Essentials subscriptions in current account",
"example": {
"accountId": 40131,
"subscriptions": [
{
"id": 151367,
"name": "fixed-1",
"status": "active",
"paymentMethodId": 8241,
"paymentMethodType": "credit-card",
"planId": 98276,
"planName": "Standard 1GB",
"size": 1,
"sizeMeasurementUnit": "GB",
"provider": "AWS",
"region": "us-west-1",
"price": 22,
"pricePeriod": "Month",
"priceCurrency": "USD",
"maximumDatabases": 1,
"availability": "Single-zone",
"connections": "1024",
"cidrAllowRules": 8,
"supportDataPersistence": true,
"supportInstantAndDailyBackups": true,
"supportReplication": true,
"supportClustering": false,
"customerSupport": "Standard",
"creationDate": "2022-11-21T20:02:21+02:00",
"links": []
},
{
"id": 120416,
"name": "subscription-name",
"status": "active",
"paymentMethodId": 123,
"paymentMethodType": "credit-card",
"planId": 123,
"planName": "Standard 30MB",
"planType": "pay-as-you-go",
"size": 30,
"sizeMeasurementUnit": "MB",
"provider": "AWS",
"region": "us-east-1",
"price": 0,
"pricePeriod": "Month",
"priceCurrency": "USD",
"maximumDatabases": 1,
"availability": "no-replication",
"connections": 30,
"cidrAllowRules": 1,
"supportDataPersistence": false,
"supportInstantAndDailyBackups": false,
"supportReplication": false,
"supportClustering": false,
"customerSupport": "basic",
"creationDate": "20-Nov-2022",
"links": []
}
],
"links": [
{
"rel": "self",
"href": "http://localhost:8081/v1/fixed/subscriptions",
"type": "GET"
}
]
}
},
"DatabaseSyncSourceSpec": {
"required": [
"endpoint"
],
"type": "object",
"properties": {
"endpoint": {
"type": "string",
"description": "Redis URI of a source database. Example format: 'redis://user:password@host:port'. If the URI provided is a Redis Cloud database, only host and port should be provided. Example: 'redis://endpoint1:6379'."
},
"encryption": {
"type": "boolean",
"description": "Defines if encryption should be used to connect to the sync source. If not set the source is a Redis Cloud database, it will automatically detect if the source uses encryption."
},
"serverCert": {
"type": "string",
"description": "TLS/SSL certificate chain of the sync source. If not set and the source is a Redis Cloud database, it will automatically detect the certificate to use."
}
},
"description": "Optional. This database will be a replica of the specified Redis databases, provided as a list of objects with endpoint and certificate details."
},
"MaintenanceWindow": {
"type": "object",
"properties": {
"days": {
"type": "array",
"items": {
"type": "string"
}
},
"startHour": {
"type": "integer",
"format": "int32"
},
"durationInHours": {
"type": "integer",
"format": "int32"
}
}
},
"Module": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"capabilityName": {
"type": "string"
},
"description": {
"type": "string"
}
},
"description": "RedisLabs database module information"
},
"AclRedisRuleUpdateRequest": {
"required": [
"name",
"redisRule"
],
"type": "object",
"properties": {
"redisRuleId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"name": {
"type": "string",
"description": "Optional. Changes the Redis ACL rule name.",
"example": "ACL-rule-example"
},
"redisRule": {
"type": "string",
"description": "Optional. Changes the Redis ACL rule pattern. See [ACL syntax](https://redis.io/docs/latest/operate/rc/security/access-control/data-access-control/configure-acls/#define-permissions-with-acl-syntax) to learn how to define rules.",
"example": "+set allkeys allchannels"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "ACL redis rule update request"
},
"ActiveActiveRegionToDelete": {
"type": "object",
"properties": {
"region": {
"type": "string",
"description": "Name of the cloud provider region to delete."
}
},
"description": "The names of the regions to delete."
},
"MaintenanceWindowSkipStatus": {
"type": "object",
"properties": {
"remainingSkips": {
"type": "integer",
"format": "int32"
},
"currentSkipEnd": {
"type": "string"
}
}
},
"CloudAccount": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string"
},
"status": {
"type": "string"
},
"accessKeyId": {
"type": "string"
},
"signInLoginUrl": {
"type": "string"
},
"awsUserArn": {
"type": "string"
},
"awsConsoleRoleArn": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"provider": {
"type": "string",
"enum": [
"AWS",
"GCP"
]
}
},
"description": "RedisLabs Cloud Account information",
"example": {
"id": 1,
"name": "Redis Internal Resources",
"provider": "AWS",
"status": "active",
"links": [
{
"rel": "self",
"href": "https://api-cloudapi.qa.redislabs.com/v1/cloud-accounts/1",
"type": "GET"
}
]
}
},
"PrivateLinkPrincipalsCreateRequest": {
"required": [
"principal"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"principal": {
"type": "string",
"description": "AWS account ID or ARN of the principal (IAM user, role, or account)",
"example": "123456789012"
},
"type": {
"type": "string",
"description": "Type of the principal",
"example": "aws_account",
"enum": [
"aws_account",
"organization",
"organization_unit",
"iam_role",
"iam_user",
"service_principal"
]
},
"alias": {
"type": "string",
"description": "Alias or friendly name for the principal",
"example": "Production Account"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Private Link principals create request"
},
"FixedSubscriptionUpdateRequest": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"name": {
"type": "string",
"description": "Optional. Updated subscription name.",
"example": "My new subscription"
},
"planId": {
"type": "integer",
"description": "Optional. An Essentials plan ID. The plan describes the dataset size, cloud provider and region, and available database configuration options. Use GET /fixed/plans/subscriptions/{subscriptionId} to get a list of compatible options for the specified subscription.",
"format": "int32"
},
"paymentMethod": {
"type": "string",
"description": "Optional. The payment method for the subscription. If set to \u2018credit-card\u2019 , \u2018paymentMethodId\u2019 must be defined.",
"enum": [
"credit-card",
"marketplace"
]
},
"paymentMethodId": {
"type": "integer",
"description": "Optional. The payment method ID you'd like to use for this subscription. Must be a valid payment method ID for this account. Use GET /payment-methods to get a list of payment methods for your account. This value is optional if \u2018paymentMethod\u2019 is \u2018marketplace\u2019, but required if 'paymentMethod' is 'credit-card'.",
"format": "int32"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Essentials subscription update request"
},
"SearchScalingFactorsData": {
"type": "object",
"properties": {
"queryPerformanceFactors": {
"type": "array",
"items": {
"type": "string"
}
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
}
},
"SubscriptionUpdateCMKRequest": {
"required": [
"customerManagedKeys"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"commandType": {
"type": "string",
"readOnly": true
},
"deletionGracePeriod": {
"type": "string",
"description": "Optional. The grace period for deleting the subscription if Redis cannot access the provided key. Required when applying customer managed keys for a new subscription.",
"example": "alerts-only",
"enum": [
"alerts-only",
"immediate",
"15-minutes",
"30-minutes",
"1-hour",
"4-hours",
"8-hours",
"12-hours",
"24-hours"
]
},
"customerManagedKeys": {
"type": "array",
"description": "The customer managed keys (CMK) to use for this subscription. If is active-active subscription, must set a key for each region.",
"items": {
"$ref": "#/components/schemas/CustomerManagedKey"
}
}
},
"description": "Subscription update request message"
},
"CostReportCreateRequest": {
"required": [
"endDate",
"startDate"
],
"type": "object",
"properties": {
"startDate": {
"type": "string",
"description": "Filter for usage starting on or after this date. Must be in format YYYY-MM-DD",
"format": "YYYY-MM-DD",
"example": "2025-10-01"
},
"endDate": {
"type": "string",
"description": "Filter for usage ending on or before this date. Must be in format YYYY-MM-DD and must be after start date",
"format": "YYYY-MM-DD",
"example": "2025-11-06"
},
"format": {
"type": "string",
"description": "Output format for the cost report",
"example": "csv",
"default": "csv",
"enum": [
"json",
"csv"
]
},
"subscriptionIds": {
"type": "array",
"description": "Array of subscriptionIDs to filter by",
"example": [
123,
456
],
"items": {
"type": "integer",
"description": "Array of subscriptionIDs to filter by",
"format": "int32"
}
},
"databaseIds": {
"type": "array",
"description": "Array of database IDs to filter by",
"example": [
789,
101112
],
"items": {
"type": "integer",
"description": "Array of database IDs to filter by",
"format": "int32"
}
},
"subscriptionType": {
"type": "string",
"description": "Filter by plan type",
"example": "pro",
"enum": [
"pro",
"essentials"
]
},
"regions": {
"type": "array",
"description": "Array of regions to filter by",
"example": [
"us-east-1",
"eu-west-1"
],
"items": {
"type": "string",
"description": "Array of regions to filter by",
"example": "[\"us-east-1\",\"eu-west-1\"]"
}
},
"tags": {
"type": "array",
"description": "Array of key-value pairs for tag filtering",
"items": {
"$ref": "#/components/schemas/Tag"
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Cost report generation request"
},
"AccountSubscriptionDatabases": {
"type": "object",
"properties": {
"accountId": {
"type": "integer",
"format": "int32"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"description": "RedisLabs Account Subscription Databases information",
"example": {
"accountId": 1001,
"subscription": [
{
"subscriptionId": 1206,
"numberOfDatabases": 6,
"databases": [
{
"databaseId": 1,
"name": "DB-RCP-2-81-7",
"protocol": "redis",
"provider": "AWS",
"region": "us-east-1",
"redisVersion": "7.4",
"respVersion": "resp2",
"status": "active",
"datasetSizeInGb": 2,
"memoryUsedInMb": 4,
"memoryStorage": "ram",
"supportOSSClusterApi": true,
"useExternalEndpointForOSSClusterApi": true,
"dataPersistence": "snapshot-every-1-hour",
"replication": false,
"dataEvictionPolicy": "noeviction",
"throughputMeasurement": {
"by": "operations-per-second",
"value": 2500
},
"activatedOn": "2021-08-29T13:03:08Z",
"lastModified": "2021-08-29T13:03:08Z",
"publicEndpoint": "redis-17571.c235866.us-east-1-1.ec2.qa-cloud.rlrcp.com:17571",
"privateEndpoint": "redis-17571.internal.c235866.us-east-1-1.ec2.qa-cloud.rlrcp.com:17571",
"replica": {
"syncSources": [
{
"endpoint": "redis://localhost:6379",
"encryption": true,
"clientCert": "-----BEGIN CERTIFICATE-----\n ... -----END CERTIFICATE-----"
}
]
},
"clustering": {
"numberOfShards": 1,
"regexRules": [
{
"ordinal": 1,
"pattern": "(?<tag>.*)"
},
{
"ordinal": 0,
"pattern": ".*\\{(?<tag>.*)\\}.*"
}
],
"hashingPolicy": "standard"
},
"security": {
"enableDefaultUser": true,
"sslClientAuthentication": false,
"tlsClientAuthentication": false,
"enableTls": false,
"sourceIps": [
"0.0.0.0/0"
]
},
"modules": [
{
"id": 18536,
"name": "RedisJSON",
"capabilityName": "JSON",
"version": "2.0.6",
"description": "Native JSON Data Type for Redis, allowing for atomic reads and writes of sub-elements",
"parameters": []
}
],
"alerts": [],
"links": []
},
{
"databaseId": 2,
"name": "DB-RCP-2-81-5",
"protocol": "redis",
"provider": "AWS",
"region": "us-east-1",
"redisVersion": "7.4",
"status": "active",
"datasetSizeInGb": 2,
"memoryUsedInMb": 2,
"memoryStorage": "ram",
"supportOSSClusterApi": true,
"useExternalEndpointForOSSClusterApi": true,
"dataPersistence": "snapshot-every-1-hour",
"replication": false,
"dataEvictionPolicy": "noeviction",
"throughputMeasurement": {
"by": "operations-per-second",
"value": 25000
},
"activatedOn": "2021-08-29T13:03:27Z",
"lastModified": "2021-08-29T13:03:27Z",
"publicEndpoint": "redis-11836.c235866.us-east-1-1.ec2.qa-cloud.rlrcp.com:11836",
"privateEndpoint": "redis-11836.internal.c235866.us-east-1-1.ec2.qa-cloud.rlrcp.com:11836",
"replica": {
"syncSources": [
{
"endpoint": "redis://localhost:6379",
"encryption": true,
"clientCert": "-----BEGIN CERTIFICATE-----\n ... -----END CERTIFICATE-----"
}
]
},
"clustering": {
"numberOfShards": 1,
"regexRules": [
{
"ordinal": 0,
"pattern": ".*\\{(?<tag>.*)\\}.*"
},
{
"ordinal": 1,
"pattern": "(?<tag>.*)"
}
],
"hashingPolicy": "standard"
},
"security": {
"enableDefaultUser": true,
"sslClientAuthentication": false,
"tlsClientAuthentication": false,
"enableTls": false,
"sourceIps": [
"0.0.0.0/0"
]
},
"modules": [
{
"id": 6652,
"name": "RediSearch",
"capabilityName": "Search and query",
"version": "2.0.11",
"description": "A comprehensive, expressive, flexible, fast and developer-friendly search and query engine for the diversity of data types in Redis with state-of-the-art scoring algorithms",
"parameters": []
}
],
"alerts": [],
"links": []
},
{
"databaseId": 3,
"name": "Redis-database-example-updated",
"protocol": "redis",
"provider": "AWS",
"region": "us-east-1",
"redisVersion": "7.4",
"status": "active",
"datasetSizeInGb": 2,
"memoryUsedInMb": 2,
"memoryStorage": "ram",
"supportOSSClusterApi": true,
"useExternalEndpointForOSSClusterApi": true,
"dataPersistence": "snapshot-every-1-hour",
"replication": false,
"dataEvictionPolicy": "noeviction",
"throughputMeasurement": {
"by": "operations-per-second",
"value": 2500
},
"activatedOn": "2021-08-29T13:03:26Z",
"lastModified": "2021-08-29T13:03:26Z",
"publicEndpoint": "redis-19708.c235866.us-east-1-1.ec2.qa-cloud.rlrcp.com:19708",
"privateEndpoint": "redis-19708.internal.c235866.us-east-1-1.ec2.qa-cloud.rlrcp.com:19708",
"replica": {
"syncSources": [
{
"endpoint": "redis://localhost:6379",
"encryption": true,
"clientCert": "-----BEGIN CERTIFICATE-----\n ... -----END CERTIFICATE-----"
}
]
},
"clustering": {
"numberOfShards": 1,
"regexRules": [
{
"ordinal": 1,
"pattern": "(?<tag>.*)"
},
{
"ordinal": 0,
"pattern": ".*\\{(?<tag>.*)\\}.*"
}
],
"hashingPolicy": "standard"
},
"security": {
"enableDefaultUser": false,
"sslClientAuthentication": false,
"tlsClientAuthentication": false,
"enableTls": false,
"sourceIps": [
"0.0.0.0/0"
]
},
"modules": [
{
"id": 18536,
"name": "RedisJSON",
"capabilityName": "JSON",
"version": "2.0.6",
"description": "Native JSON Data Type for Redis, allowing for atomic reads and writes of sub-elements",
"parameters": []
}
],
"alerts": [],
"links": []
},
{
"databaseId": 4,
"name": "DB-RCP-2-81-6",
"protocol": "redis",
"provider": "AWS",
"region": "us-east-1",
"redisVersion": "7.4",
"status": "active",
"datasetSizeInGb": 2,
"memoryUsedInMb": 2,
"memoryStorage": "ram",
"supportOSSClusterApi": true,
"useExternalEndpointForOSSClusterApi": true,
"dataPersistence": "snapshot-every-1-hour",
"replication": false,
"dataEvictionPolicy": "noeviction",
"throughputMeasurement": {
"by": "operations-per-second",
"value": 25000
},
"activatedOn": "2021-08-29T13:03:27Z",
"lastModified": "2021-08-29T13:03:27Z",
"publicEndpoint": "redis-14503.c235866.us-east-1-1.ec2.qa-cloud.rlrcp.com:14503",
"privateEndpoint": "redis-14503.internal.c235866.us-east-1-1.ec2.qa-cloud.rlrcp.com:14503",
"replica": {
"syncSources": [
{
"endpoint": "redis://localhost:6379",
"encryption": true,
"clientCert": "-----BEGIN CERTIFICATE-----\n ... -----END CERTIFICATE-----"
}
]
},
"clustering": {
"numberOfShards": 1,
"regexRules": [
{
"ordinal": 1,
"pattern": "(?<tag>.*)"
},
{
"ordinal": 0,
"pattern": ".*\\{(?<tag>.*)\\}.*"
}
],
"hashingPolicy": "standard"
},
"security": {
"enableDefaultUser": true,
"sslClientAuthentication": false,
"tlsClientAuthentication": false,
"enableTls": false,
"sourceIps": [
"0.0.0.0/0"
]
},
"modules": [
{
"id": 6653,
"name": "RedisTimeSeries",
"capabilityName": "Time series",
"version": "1.4.10",
"description": "Time-Series data structure for redis",
"parameters": []
}
],
"alerts": [],
"links": []
},
{
"databaseId": 5,
"name": "CI-tests-DO-NOT-DELETE",
"protocol": "redis",
"provider": "AWS",
"region": "us-east-1",
"redisVersion": "7.4",
"status": "active",
"datasetSizeInGb": 2,
"memoryUsedInMb": 4,
"memoryStorage": "ram",
"supportOSSClusterApi": false,
"useExternalEndpointForOSSClusterApi": false,
"dataPersistence": "none",
"replication": true,
"dataEvictionPolicy": "volatile-lru",
"throughputMeasurement": {
"by": "operations-per-second",
"value": 25000
},
"activatedOn": "2021-08-29T13:03:22Z",
"lastModified": "2021-08-29T13:03:22Z",
"publicEndpoint": "redis-11349.c235866.us-east-1-1.ec2.qa-cloud.rlrcp.com:11349",
"privateEndpoint": "redis-11349.internal.c235866.us-east-1-1.ec2.qa-cloud.rlrcp.com:11349",
"replica": {
"syncSources": [
{
"endpoint": "redis://localhost:6379",
"encryption": true,
"clientCert": "-----BEGIN CERTIFICATE-----\n ... -----END CERTIFICATE-----"
}
]
},
"clustering": {
"numberOfShards": 1,
"regexRules": [],
"hashingPolicy": "standard"
},
"security": {
"enableDefaultUser": true,
"sslClientAuthentication": false,
"tlsClientAuthentication": false,
"enableTls": false,
"sourceIps": [
"0.0.0.0/0"
]
},
"modules": [],
"alerts": [],
"links": []
},
{
"databaseId": 6,
"name": "DB-RCP-2-81-4",
"protocol": "redis",
"provider": "AWS",
"region": "us-east-1",
"redisVersion": "7.4",
"status": "active",
"datasetSizeInGb": 2,
"memoryUsedInMb": 1,
"memoryStorage": "ram",
"supportOSSClusterApi": true,
"useExternalEndpointForOSSClusterApi": true,
"dataPersistence": "snapshot-every-1-hour",
"replication": false,
"dataEvictionPolicy": "noeviction",
"throughputMeasurement": {
"by": "operations-per-second",
"value": 25000
},
"activatedOn": "2021-08-29T13:03:27Z",
"lastModified": "2021-08-29T13:03:27Z",
"publicEndpoint": "redis-13074.c235866.us-east-1-1.ec2.qa-cloud.rlrcp.com:13074",
"privateEndpoint": "redis-13074.internal.c235866.us-east-1-1.ec2.qa-cloud.rlrcp.com:13074",
"replica": {
"syncSources": [
{
"endpoint": "redis://localhost:6379",
"encryption": true,
"clientCert": "-----BEGIN CERTIFICATE-----\n ... -----END CERTIFICATE-----"
}
]
},
"clustering": {
"numberOfShards": 1,
"regexRules": [
{
"ordinal": 1,
"pattern": "(?<tag>.*)"
},
{
"ordinal": 0,
"pattern": ".*\\{(?<tag>.*)\\}.*"
}
],
"hashingPolicy": "standard"
},
"security": {
"enableDefaultUser": true,
"sslClientAuthentication": false,
"tlsClientAuthentication": false,
"enableTls": false,
"sourceIps": [
"0.0.0.0/0"
]
},
"modules": [
{
"id": 6651,
"name": "RediSearch",
"capabilityName": "Search and query",
"version": "2.0.11",
"description": "A comprehensive, expressive, flexible, fast and developer-friendly search and query engine for the diversity of data types in Redis with state-of-the-art scoring algorithms",
"parameters": []
}
],
"alerts": [],
"links": []
}
],
"links": []
}
],
"links": [
{
"rel": "self",
"href": "https://api-cloudapi.qa.redislabs.com/v1/subscriptions/120416/databases?offset=0&limit=100",
"type": "GET"
}
]
}
},
"AccountSystemLogEntry": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"time": {
"type": "string",
"format": "date-time"
},
"originator": {
"type": "string"
},
"apiKeyName": {
"type": "string"
},
"resource": {
"type": "string"
},
"resourceId": {
"type": "integer",
"format": "int32"
},
"type": {
"type": "string"
},
"description": {
"type": "string"
}
},
"description": "Account system log entry"
},
"CloudTag": {
"type": "object",
"properties": {
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"key": {
"type": "string"
},
"value": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
},
"description": "Database tag",
"example": {
"key": "environment",
"value": "production",
"createdAt": "2024-05-21T20:02:21+02:00",
"updatedAt": "2024-06-21T20:02:21+02:00",
"links": [
{
"rel": "self",
"type": "GET",
"href": "http://localhost:8081/v1/fixed/subscriptions/178867/databases/51412930/tags"
}
]
}
},
"AccountACLRedisRules": {
"type": "object",
"properties": {
"accountId": {
"type": "integer",
"format": "int32"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"description": "Redis list of ACL redis rules in current account",
"example": {
"accountId": 1001,
"redisRules": [
{
"id": 7,
"name": "Full-Access",
"acl": "+@all ~*",
"isDefault": true,
"status": "active"
},
{
"id": 8,
"name": "Read-Write",
"acl": "+@all -@dangerous ~*",
"isDefault": true,
"status": "active"
},
{
"id": 9,
"name": "Read-Only",
"acl": "+@read ~*",
"isDefault": true,
"status": "active"
}
]
}
},
"FixedSubscription": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string"
},
"status": {
"type": "string"
},
"paymentMethodId": {
"type": "integer",
"format": "int32"
},
"paymentMethodType": {
"type": "string"
},
"planId": {
"type": "integer",
"format": "int32"
},
"planName": {
"type": "string"
},
"planType": {
"type": "string"
},
"size": {
"type": "number",
"format": "double"
},
"sizeMeasurementUnit": {
"type": "string"
},
"provider": {
"type": "string"
},
"region": {
"type": "string"
},
"price": {
"type": "integer",
"format": "int32"
},
"pricePeriod": {
"type": "string"
},
"priceCurrency": {
"type": "string"
},
"maximumDatabases": {
"type": "integer",
"format": "int32"
},
"availability": {
"type": "string"
},
"connections": {
"type": "string"
},
"cidrAllowRules": {
"type": "integer",
"format": "int32"
},
"supportDataPersistence": {
"type": "boolean"
},
"supportInstantAndDailyBackups": {
"type": "boolean"
},
"supportReplication": {
"type": "boolean"
},
"supportClustering": {
"type": "boolean"
},
"customerSupport": {
"type": "string"
},
"creationDate": {
"type": "string",
"format": "date-time"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"databaseStatus": {
"type": "string"
}
},
"description": "Redis Essentials Subscription information",
"example": {
"id": 151367,
"name": "fixed-sub-2",
"status": "active",
"paymentMethodId": 8241,
"paymentMethodType": "credit-card",
"planId": 98276,
"planName": "Standard 1GB",
"size": 1,
"sizeMeasurementUnit": "GB",
"provider": "AWS",
"region": "us-west-1",
"price": 22,
"pricePeriod": "Month",
"priceCurrency": "USD",
"maximumDatabases": 1,
"availability": "Single-zone",
"connections": "1024",
"cidrAllowRules": 8,
"supportDataPersistence": true,
"supportInstantAndDailyBackups": true,
"supportReplication": true,
"customerSupport": "Standard",
"creationDate": "2022-11-21T20:02:21+02:00",
"supportClustering": false,
"links": [
{
"rel": "self",
"href": "http://localhost:8081/v1/fixed/subscriptions/151367",
"type": "GET"
}
]
}
},
"DatabaseCertificateSpec": {
"required": [
"publicCertificatePEMString"
],
"type": "object",
"properties": {
"publicCertificatePEMString": {
"type": "string",
"description": "Client certificate public key in PEM format, with new line characters replaced with '\\n'."
}
},
"description": "Optional. A list of client TLS/SSL certificates. If specified, mTLS authentication will be required to authenticate user connections. If set to an empty list, TLS client certificates will be removed and mTLS will not be required. TLS connection may still apply, depending on the value of 'enableTls'."
},
"AclRoleUpdateRequest": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Optional. Changes the database access role name.",
"example": "ACL-role-example"
},
"redisRules": {
"type": "array",
"description": "Optional. Changes the Redis ACL rules to assign to this database access role.",
"items": {
"$ref": "#/components/schemas/AclRoleRedisRuleSpec"
}
},
"roleId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "ACL role update request"
},
"AccountUserOptions": {
"type": "object",
"properties": {
"billing": {
"type": "boolean"
},
"emailAlerts": {
"type": "boolean"
},
"operationalEmails": {
"type": "boolean"
},
"mfaEnabled": {
"type": "boolean"
}
},
"description": "RedisLabs User options information"
},
"AccountSystemLogEntries": {
"type": "object",
"properties": {
"entries": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AccountSystemLogEntry"
}
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"example": {
"entries": [
{
"id": 2900349,
"time": "2022-10-12T10:54:31Z",
"originator": "example-value",
"type": "Account",
"description": "example-value (example.value@redis.com)'s user name was changed to Example Value"
},
{
"id": 2900348,
"time": "2022-10-12T10:54:11Z",
"originator": "invalid-name",
"type": "Account",
"description": "Invited invalid-name (cab@fufu.com) to join team"
}
]
}
},
"TgwUpdateCidrsRequest": {
"type": "object",
"properties": {
"cidrs": {
"type": "array",
"description": "Optional. List of transit gateway attachment CIDRs.",
"example": [
"10.10.10.0/24",
"10.10.20.0/24"
],
"items": {
"$ref": "#/components/schemas/Cidr"
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Transit Gateway update attachment cidr/s request message"
},
"AccountSessionLogEntry": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"time": {
"type": "string",
"format": "date-time"
},
"user": {
"type": "string"
},
"userAgent": {
"type": "string"
},
"ipAddress": {
"type": "string"
},
"userRole": {
"type": "string"
},
"type": {
"type": "string"
},
"action": {
"type": "string"
}
},
"description": "Account session log entry"
},
"AccountUser": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string"
},
"email": {
"type": "string"
},
"role": {
"type": "string"
},
"signUp": {
"type": "string"
},
"userType": {
"type": "string"
},
"hasApiKey": {
"type": "boolean"
},
"options": {
"$ref": "#/components/schemas/AccountUserOptions"
}
},
"description": "RedisLabs User information",
"example": {
"id": 60192,
"name": "Clifford O'neill",
"email": "clifford.mail@gmail.com",
"role": "Viewer",
"userType": "Local",
"hasApiKey": false,
"options": {
"billing": false,
"emailAlerts": false,
"operationalEmails": false,
"mfaEnabled": false
}
}
},
"ResourceTag": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
},
"description": "List of resource tags to apply to the subscription. This will replace all existing tags."
},
"CustomerManagedKeyAccessDetails": {
"type": "object",
"properties": {
"redisServiceAccount": {
"type": "string"
},
"googlePredefinedRoles": {
"type": "array",
"items": {
"type": "string"
}
},
"googleCustomPermissions": {
"type": "array",
"items": {
"type": "string"
}
},
"redisIamRole": {
"type": "string"
},
"requiredKeyPolicyStatements": {
"type": "object"
},
"deletionGracePeriodOptions": {
"type": "array",
"items": {
"type": "string"
}
}
},
"description": "Configuration regarding customer managed persistent storage encryption"
},
"SubscriptionMaintenanceWindowsSpec": {
"required": [
"mode"
],
"type": "object",
"properties": {
"mode": {
"type": "string",
"description": "Maintenance window mode: either 'manual' or 'automatic'. Must provide 'windows' if manual.",
"example": "manual",
"enum": [
"manual",
"automatic"
]
},
"windows": {
"type": "array",
"description": "Maintenance window timeframes if mode is set to 'manual'. Up to 7 maintenance windows can be provided.",
"items": {
"$ref": "#/components/schemas/MaintenanceWindowSpec"
}
}
}
},
"ACLUser": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string"
},
"role": {
"type": "string"
},
"status": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"description": "Redis ACL user information",
"example": {
"id": 1,
"name": "abc",
"role": "role-name",
"status": "active"
}
},
"DatabaseCertificate": {
"type": "object",
"properties": {
"publicCertificatePEMString": {
"type": "string",
"description": "An X.509 PEM (base64) encoded server certificate with new line characters replaced by '\\n'."
}
},
"description": "Database certificate"
},
"AccountSessionLogEntries": {
"type": "object",
"properties": {
"entries": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AccountSessionLogEntry"
}
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
}
},
"Tag": {
"required": [
"key",
"value"
],
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "Tag key",
"example": "environment"
},
"value": {
"type": "string",
"description": "Tag value",
"example": "production"
}
},
"description": "Tag filter for cost report"
},
"AccountSubscriptions": {
"type": "object",
"properties": {
"accountId": {
"type": "integer",
"format": "int32"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"description": "RedisLabs list of subscriptions in current account",
"example": {
"accountId": 1001,
"subscriptions": [
{
"id": 1206,
"name": "subscription name",
"status": "active",
"deploymentType": "single-region",
"paymentMethodId": 123,
"publicEndpointAccess": true,
"memoryStorage": "ram",
"numberOfDatabases": 6,
"paymentMethodType": "credit-card",
"storageEncryption": false,
"subscriptionPricing": [
{
"type": "Shards",
"typeDetails": "high-throughput",
"quantity": 7,
"quantityMeasurement": "shards",
"pricePerUnit": 0.124,
"priceCurrency": "USD",
"pricePeriod": "hour"
}
],
"cloudDetails": [
{
"provider": "AWS",
"awsAccountId": "550680565604",
"cloudAccountId": 1666,
"totalSizeInGb": 0.0272,
"regions": [
{
"region": "us-east-1",
"networking": [
{
"deploymentCIDR": "10.0.0.0/24",
"subnetId": "subnet-009ce004ed90da8a6"
}
],
"preferredAvailabilityZones": [
"us-east-1a"
],
"multipleAvailabilityZones": false
}
],
"links": []
}
],
"links": []
}
]
}
},
"CrdbRegionSpec": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Database name."
},
"localThroughputMeasurement": {
"$ref": "#/components/schemas/LocalThroughput"
}
},
"description": "List of databases in the subscription with local throughput details. Default: 1000 read and write ops/sec for each database"
},
"VpcPeeringCreateAwsRequest": {
"required": [
"awsAccountId",
"region",
"vpcId"
],
"type": "object",
"properties": {
"provider": {
"type": "string"
},
"region": {
"type": "string",
"description": "Deployment region as defined by the cloud provider.",
"example": "us-east-1"
},
"awsAccountId": {
"type": "string",
"description": "AWS Account ID.",
"example": "<aws-account-id>"
},
"vpcId": {
"type": "string",
"description": "VPC ID.",
"example": "<vpc-identifier>"
},
"vpcCidr": {
"type": "string",
"description": "Optional. VPC CIDR.",
"example": "<10.10.10.0/24>"
},
"vpcCidrs": {
"type": "array",
"description": "Optional. List of VPC CIDRs.",
"example": [
"<10.10.10.0/24>",
"<10.10.20.0/24>"
],
"items": {
"type": "string",
"description": "Optional. List of VPC CIDRs.",
"example": "[\"<10.10.10.0/24>\",\"<10.10.20.0/24>\"]"
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "VPC peering creation request message"
},
"FixedDatabaseUpdateRequest": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"databaseId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"name": {
"type": "string",
"description": "Optional. Updated database name.",
"example": "Redis-Essentials-database-example"
},
"memoryLimitInGb": {
"minimum": 0.1,
"exclusiveMinimum": false,
"type": "number",
"description": "(Pay-as-you-go subscriptions only) Optional. Total memory in GB, including replication and other overhead. You cannot set both datasetSizeInGb and totalMemoryInGb.",
"format": "double",
"example": 1,
"deprecated": true
},
"datasetSizeInGb": {
"minimum": 0.1,
"exclusiveMinimum": false,
"type": "number",
"description": "(Pay-as-you-go subscriptions only) Optional. The maximum amount of data in the dataset for this database in GB. You cannot set both datasetSizeInGb and totalMemoryInGb. If \u2018replication\u2019 is 'true', the database\u2019s total memory will be twice as large as the datasetSizeInGb. If \u2018replication\u2019 is false, the database\u2019s total memory will be the datasetSizeInGb value.",
"format": "double",
"example": 1
},
"supportOSSClusterApi": {
"type": "boolean",
"description": "(Pay-as-you-go subscriptions only) Optional. Support Redis [OSS Cluster API](https://redis.io/docs/latest/operate/rc/databases/configuration/clustering/#oss-cluster-api).",
"example": true
},
"respVersion": {
"type": "string",
"description": "Optional. Redis Serialization Protocol version. Must be compatible with Redis version.",
"example": "resp3",
"enum": [
"resp2",
"resp3"
]
},
"useExternalEndpointForOSSClusterApi": {
"type": "boolean",
"description": "(Pay-as-you-go subscriptions only) Optional. If set to 'true', the database will use the external endpoint for OSS Cluster API. This setting blocks the database's private endpoint. Can only be set if 'supportOSSClusterAPI' is 'true'. Default: 'false'",
"example": true
},
"enableDatabaseClustering": {
"type": "boolean",
"description": "(Pay-as-you-go subscriptions only) Optional. Distributes database data to different cloud instances.",
"example": false
},
"numberOfShards": {
"type": "integer",
"description": "(Pay-as-you-go subscriptions only) Optional. Changes the number of master shards.",
"format": "int32",
"example": 2
},
"dataPersistence": {
"type": "string",
"description": "Optional. Type and rate of data persistence in persistent storage. Use GET /fixed/plans/{planId} to see if your plan supports data persistence.",
"enum": [
"none",
"aof-every-1-second",
"aof-every-write",
"snapshot-every-1-hour",
"snapshot-every-6-hours",
"snapshot-every-12-hours"
]
},
"dataEvictionPolicy": {
"type": "string",
"description": "Optional. Turns database replication on or off.",
"enum": [
"allkeys-lru",
"allkeys-lfu",
"allkeys-lrm",
"allkeys-random",
"volatile-lru",
"volatile-lfu",
"volatile-lrm",
"volatile-random",
"volatile-ttl",
"noeviction"
]
},
"replication": {
"type": "boolean",
"description": "Optional. Sets database replication. Use GET /fixed/plans/{planId} to see if your plan supports database replication."
},
"periodicBackupPath": {
"type": "string",
"description": "Optional. Changes the backup location path. If specified, the database will back up every 24 hours to this location, and you can manually back up the database to this location at any time. Use GET /fixed/plans/{planId} to see if your plan supports database backups. If set to an empty string, the backup path will be removed.",
"example": "s3://<backup-path>"
},
"sourceIps": {
"type": "array",
"description": "Optional. List of source IP addresses or subnet masks to allow. If specified, Redis clients will be able to connect to this database only from within the specified source IP addresses ranges. Example: '['192.168.10.0/32', '192.168.12.0/24']'",
"items": {
"type": "string",
"description": "Optional. List of source IP addresses or subnet masks to allow. If specified, Redis clients will be able to connect to this database only from within the specified source IP addresses ranges. Example: '['192.168.10.0/32', '192.168.12.0/24']'"
}
},
"replicaOf": {
"type": "array",
"description": "Optional. This database will be a replica of the specified Redis databases provided as one or more URI (sample format: 'redis://user:password@host:port)'. If the URI provided is Redis Cloud instance, only host and port should be provided (using the format: ['redis://endpoint1:6379', 'redis://endpoint2:6380'] ).",
"deprecated": true,
"items": {
"type": "string",
"description": "Optional. This database will be a replica of the specified Redis databases provided as one or more URI (sample format: 'redis://user:password@host:port)'. If the URI provided is Redis Cloud instance, only host and port should be provided (using the format: ['redis://endpoint1:6379', 'redis://endpoint2:6380'] )."
}
},
"replica": {
"$ref": "#/components/schemas/ReplicaOfSpec"
},
"regexRules": {
"type": "array",
"description": "(Pay-as-you-go subscriptions only) Optional. Hashing policy Regex rules. Used only if 'shardingType' is 'custom-regex-rules'.",
"items": {
"type": "string",
"description": "(Pay-as-you-go subscriptions only) Optional. Hashing policy Regex rules. Used only if 'shardingType' is 'custom-regex-rules'."
}
},
"clientSslCertificate": {
"type": "string",
"description": "Optional. A public key client TLS/SSL certificate with new line characters replaced with '\\n'. If specified, mTLS authentication will be required to authenticate user connections if it is not already required. If set to an empty string, TLS client certificates will be removed and mTLS will not be required. TLS connection may still apply, depending on the value of 'enableTls'.",
"deprecated": true
},
"clientTlsCertificates": {
"type": "array",
"description": "Optional. A list of client TLS/SSL certificates. If specified, mTLS authentication will be required to authenticate user connections. If set to an empty list, TLS client certificates will be removed and mTLS will not be required. TLS connection may still apply, depending on the value of 'enableTls'.",
"items": {
"$ref": "#/components/schemas/DatabaseCertificateSpec"
}
},
"enableTls": {
"type": "boolean",
"description": "Optional. When 'true', requires TLS authentication for all connections - mTLS with valid clientTlsCertificates, regular TLS when clientTlsCertificates is not provided. If enableTls is set to 'false' while mTLS is required, it will remove the mTLS requirement and erase previously provided clientTlsCertificates."
},
"password": {
"type": "string",
"description": "Optional. Changes the password used to access the database with the 'default' user."
},
"enableDefaultUser": {
"type": "boolean",
"description": "Optional. When 'true', allows connecting to the database with the 'default' user. When 'false', only defined access control users can connect to the database."
},
"alerts": {
"type": "array",
"description": "Optional. Changes Redis database alert details.",
"items": {
"$ref": "#/components/schemas/DatabaseAlertSpec"
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Essentials database update request"
},
"CloudAccountCreateRequest": {
"required": [
"accessKeyId",
"accessSecretKey",
"consolePassword",
"consoleUsername",
"name",
"signInLoginUrl"
],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Cloud account display name.",
"example": "My new Cloud Account"
},
"provider": {
"type": "string",
"description": "Optional. Cloud provider. Default: 'AWS'",
"example": "AWS",
"enum": [
"AWS",
"GCP"
]
},
"accessKeyId": {
"type": "string",
"description": "Cloud provider access key.",
"example": "****"
},
"accessSecretKey": {
"type": "string",
"description": "Cloud provider secret key.",
"example": "****"
},
"consoleUsername": {
"type": "string",
"description": "Cloud provider management console username.",
"example": "me@mycompany.com"
},
"consolePassword": {
"type": "string",
"description": "Cloud provider management console password.",
"example": "****"
},
"signInLoginUrl": {
"type": "string",
"description": "Cloud provider management console login URL.",
"example": "https://<aws-account-identifier>.signin.aws.amazon.com/console"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Cloud Account definition"
},
"ModulesData": {
"type": "object",
"properties": {
"modules": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Module"
}
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"example": {
"modules": [
{
"name": "RedisBloom",
"capabilityName": "Probabilistic",
"description": "A set of probabilistic data structures to Redis, including Bloom filter, Cuckoo filter, Count-min sketch, Top-K, and t-digest",
"parameters": []
},
{
"name": "RedisJSON",
"capabilityName": "JSON",
"description": "Native JSON Data Type for Redis, allowing for atomic reads and writes of sub-elements",
"parameters": []
},
{
"name": "RediSearch",
"capabilityName": "Search and query",
"description": "A comprehensive, expressive, flexible, fast and developer-friendly search and query engine for the diversity of data types in Redis with state-of-the-art scoring algorithms",
"parameters": [
{
"name": "number-of-documents",
"description": "Expected number of documents the database module will be indexing",
"type": "integer",
"defaultValue": 1000000,
"required": false
}
]
},
{
"name": "RedisTimeSeries",
"capabilityName": "Time series",
"description": "Time-Series data structure for redis",
"parameters": []
}
]
}
},
"ActiveActiveRegionDeleteRequest": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"regions": {
"type": "array",
"description": "The names of the regions to delete.",
"items": {
"$ref": "#/components/schemas/ActiveActiveRegionToDelete"
}
},
"dryRun": {
"type": "boolean",
"description": "Optional. When 'false': Creates a deployment plan and deploys it, deleting any resources required by the plan. When 'true': creates a read-only deployment plan and does not delete or modify any resources. Default: 'false'",
"example": false
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Active active region deletion request message"
},
"AccountACLUsers": {
"type": "object",
"properties": {
"accountId": {
"type": "integer",
"format": "int32"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"description": "Redis list of ACL users in current account",
"example": {
"accountId": 1001,
"users": [
{
"id": 1,
"name": "user",
"role": "role-name",
"status": "active",
"links": []
}
]
}
},
"AclRoleRedisRuleSpec": {
"required": [
"databases",
"ruleName"
],
"type": "object",
"properties": {
"ruleName": {
"type": "string",
"description": "The name of a Redis ACL rule to assign to the role. Use 'GET /acl/redisRules' to get a list of available rules for your account.",
"example": "Read-Only"
},
"databases": {
"type": "array",
"description": "A list of databases where the specified rule applies for this role.",
"items": {
"$ref": "#/components/schemas/AclRoleDatabaseSpec"
}
}
},
"description": "Optional. Changes the Redis ACL rules to assign to this database access role."
},
"ActiveActiveSubscriptionRegions": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"description": "List of active-active subscription regions",
"example": {
"subscriptionId": 126,
"regions": [
{
"regionId": 1,
"region": "us-east-1",
"deploymentCidr": "10.0.0.0/24",
"vpcId": "vpc-0bf863584c46321e4",
"databases": [
{
"databaseId": 862,
"databaseName": "Bdb",
"readOperationsPerSecond": 500,
"writeOperationsPerSecond": 500,
"respVersion": "resp3",
"links": []
},
{
"databaseId": 864,
"databaseName": "Bdb2",
"readOperationsPerSecond": 1000,
"writeOperationsPerSecond": 1000,
"respVersion": "resp3",
"links": []
}
],
"links": []
},
{
"regionId": 4,
"region": "eu-west-1",
"deploymentCidr": "10.0.1.0/24",
"vpcId": "vpc-0108fb753063ecf8b",
"databases": [
{
"databaseId": 862,
"databaseName": "Bdb",
"readOperationsPerSecond": 500,
"writeOperationsPerSecond": 500,
"respVersion": "resp3",
"links": []
},
{
"databaseId": 864,
"databaseName": "Bdb2",
"readOperationsPerSecond": 1000,
"writeOperationsPerSecond": 1000,
"respVersion": "resp3",
"links": []
}
],
"links": []
}
],
"links": [
{
"rel": "self",
"href": "https://api-cloudapi.qa.redislabs.com/v1/subscriptions/133876/regions",
"type": "GET"
}
]
}
},
"AccountFixedSubscriptionDatabases": {
"type": "object",
"properties": {
"accountId": {
"type": "integer",
"format": "int32"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"description": "RedisLabs Account Subscription Databases information",
"example": {
"accountId": 40131,
"subscription": {
"subscriptionId": 154714,
"numberOfDatabases": 2,
"databases": [
{
"databaseId": 51324587,
"name": "bdb",
"protocol": "stack",
"provider": "AWS",
"region": "us-east-1",
"redisVersion": "7.4",
"status": "draft",
"planMemoryLimit": 250,
"respVersion": "resp2",
"memoryLimitMeasurementUnit": "MB",
"memoryUsedInMb": 1,
"memoryStorage": "ram",
"dataPersistence": "none",
"replication": true,
"dataEvictionPolicy": "noeviction",
"clustering": {
"enabled": false,
"regexRules": [
{
"ordinal": 0,
"pattern": ".*\\{(?<tag>.*)\\}.*"
},
{
"ordinal": 1,
"pattern": "(?<tag>.*)"
}
],
"hashingPolicy": "standard"
},
"security": {
"defaultUserEnabled": true,
"sourceIps": [
"0.0.0.0/0"
]
},
"modules": [
{
"id": 18534,
"name": "searchlight",
"capabilityName": "Search and query",
"version": "2.2.6",
"description": "A comprehensive, expressive, flexible, fast and developer-friendly search and query engine for the diversity of data types in Redis with state-of-the-art scoring algorithms",
"parameters": []
},
{
"id": 18535,
"name": "RedisBloom",
"capabilityName": "Probabilistic",
"version": "2.2.12",
"description": "A set of probabilistic data structures to Redis, including Bloom filter, Cuckoo filter, Count-min sketch, Top-K, and t-digest",
"parameters": []
},
{
"id": 18536,
"name": "RedisJSON",
"capabilityName": "JSON",
"version": "2.0.6",
"description": "Native JSON Data Type for Redis, allowing for atomic reads and writes of sub-elements",
"parameters": []
},
{
"id": 18537,
"name": "RedisTimeSeries",
"capabilityName": "Time series",
"version": "1.6.8",
"description": "Time-Series data structure for Redis",
"parameters": []
}
],
"alerts": [
{
"name": "connections-limit",
"value": 80,
"defaultValue": 80
}
],
"backup": {
"remoteBackupEnabled": false
},
"links": []
},
{
"databaseId": 51324586,
"name": "firstDB",
"protocol": "stack",
"provider": "AWS",
"region": "us-east-1",
"status": "draft",
"planMemoryLimit": 250,
"memoryLimitMeasurementUnit": "MB",
"memoryUsedInMb": 1,
"memoryStorage": "ram",
"dataPersistence": "none",
"replication": true,
"dataEvictionPolicy": "noeviction",
"clustering": {
"enabled": false,
"regexRules": [
{
"ordinal": 0,
"pattern": ".*\\{(?<tag>.*)\\}.*"
},
{
"ordinal": 1,
"pattern": "(?<tag>.*)"
}
],
"hashingPolicy": "standard"
},
"security": {
"defaultUserEnabled": true,
"sourceIps": [
"0.0.0.0/0"
]
},
"modules": [
{
"id": 18529,
"name": "searchlight",
"capabilityName": "Search and query",
"version": "2.2.6",
"description": "A comprehensive, expressive, flexible, fast and developer-friendly search and query engine for the diversity of data types in Redis with state-of-the-art scoring algorithms",
"parameters": []
},
{
"id": 18530,
"name": "RedisBloom",
"capabilityName": "Probabilistic",
"version": "2.2.12",
"description": "A set of probabilistic data structures to Redis, including Bloom filter, Cuckoo filter, Count-min sketch, Top-K, and t-digest",
"parameters": []
},
{
"id": 18531,
"name": "RedisJSON",
"capabilityName": "JSON",
"version": "2.0.6",
"description": "Native JSON Data Type for Redis, allowing for atomic reads and writes of sub-elements",
"parameters": []
},
{
"id": 18532,
"name": "RedisTimeSeries",
"capabilityName": "Time series",
"version": "1.6.8",
"description": "Time-Series data structure for Redis",
"parameters": []
}
],
"alerts": [
{
"name": "connections-limit",
"value": 80,
"defaultValue": 80
}
],
"backup": {
"remoteBackupEnabled": false
},
"links": []
}
],
"links": []
},
"links": []
}
},
"DatabaseAlertSpec": {
"required": [
"name",
"value"
],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Alert type. Available options depend on Plan type. See [Configure alerts](https://redis.io/docs/latest/operate/rc/databases/monitor-performance/#configure-metric-alerts) for more information.",
"example": "dataset-size",
"enum": [
"dataset-size",
"datasets-size",
"throughput-higher-than",
"throughput-lower-than",
"latency",
"syncsource-error",
"syncsource-lag",
"connections-limit"
]
},
"value": {
"type": "integer",
"description": "Value over which an alert will be sent. Default values and range depend on the alert type. See [Configure alerts](https://redis.io/docs/latest/operate/rc/databases/monitor-performance/#configure-metric-alerts) for more information.",
"format": "int32",
"example": 80
}
},
"description": "Optional. Changes Redis database alert details."
},
"LocalThroughput": {
"type": "object",
"properties": {
"region": {
"type": "string",
"description": "Specify one of the selected cloud provider regions for the subscription."
},
"writeOperationsPerSecond": {
"type": "integer",
"description": "Write operations for this region per second. Default: 1000 ops/sec",
"format": "int64",
"example": 1000
},
"readOperationsPerSecond": {
"type": "integer",
"description": "Read operations for this region per second. Default: 1000 ops/sec",
"format": "int64",
"example": 1000
}
},
"description": "Optional. Expected read and write throughput for this region."
},
"PscEndpointUpdateRequest": {
"required": [
"endpointId",
"pscServiceId",
"subscriptionId"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"pscServiceId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"endpointId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"gcpProjectId": {
"type": "string",
"description": "Google Cloud project ID.",
"example": "my-gcp-project"
},
"gcpVpcName": {
"type": "string",
"description": "Name of the Google Cloud VPC that hosts your application.",
"example": "my-vpc"
},
"gcpVpcSubnetName": {
"type": "string",
"description": "Name of your VPC's subnet of IP address ranges.",
"example": "my-vpc-subnet"
},
"endpointConnectionName": {
"type": "string",
"description": "Prefix used to create PSC endpoints in the consumer application VPC. Endpoint names appear in Google Cloud as endpoint name prefix + endpoint number.",
"example": "my-endpoint-connection"
},
"action": {
"type": "string",
"description": "Action to perform on the endpoint.",
"enum": [
"accept",
"reject"
]
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Private Service Connect endpoint update request"
},
"DatabaseSlowLogEntries": {
"type": "object",
"properties": {
"entries": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DatabaseSlowLogEntry"
}
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
}
},
"DatabaseSlowLogEntry": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"startTime": {
"type": "string",
"format": "date-time"
},
"duration": {
"type": "integer",
"format": "int32"
},
"arguments": {
"type": "string"
}
},
"description": "Database slowlog entry"
},
"ActiveActivePscEndpointUpdateRequest": {
"required": [
"endpointId",
"pscServiceId",
"regionId",
"subscriptionId"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"pscServiceId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"endpointId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"regionId": {
"type": "integer",
"description": "Deployment region id as defined by cloud provider",
"format": "int32",
"readOnly": true,
"example": 27
},
"gcpProjectId": {
"type": "string",
"description": "Google Cloud project ID.",
"example": "my-gcp-project"
},
"gcpVpcName": {
"type": "string",
"description": "Name of the Google Cloud VPC that hosts your application.",
"example": "my-vpc"
},
"gcpVpcSubnetName": {
"type": "string",
"description": "Name of your VPC's subnet of IP address ranges.",
"example": "my-vpc-subnet"
},
"endpointConnectionName": {
"type": "string",
"description": "Prefix used to create PSC endpoints in the consumer application VPC. Endpoint names appear in Google Cloud as endpoint name prefix + endpoint number.",
"example": "my-endpoint-connection"
},
"action": {
"type": "string",
"description": "Action to perform on the endpoint.",
"enum": [
"accept",
"reject"
]
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Private Service Connect endpoint update request"
},
"SubscriptionMaintenanceWindows": {
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"manual",
"automatic"
]
},
"timeZone": {
"type": "string"
},
"windows": {
"type": "array",
"items": {
"$ref": "#/components/schemas/MaintenanceWindow"
}
},
"skipStatus": {
"$ref": "#/components/schemas/MaintenanceWindowSkipStatus"
}
}
},
"FixedSubscriptionsPlan": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string"
},
"size": {
"type": "number",
"format": "double"
},
"datasetSize": {
"type": "number",
"format": "double"
},
"sizeMeasurementUnit": {
"type": "string"
},
"provider": {
"type": "string"
},
"region": {
"type": "string"
},
"regionId": {
"type": "integer",
"format": "int32"
},
"price": {
"type": "integer",
"format": "int32"
},
"priceCurrency": {
"type": "string"
},
"pricePeriod": {
"type": "string"
},
"maximumDatabases": {
"type": "integer",
"format": "int32"
},
"maximumThroughput": {
"type": "integer",
"format": "int32"
},
"maximumBandwidthGB": {
"type": "integer",
"format": "int32"
},
"availability": {
"type": "string"
},
"connections": {
"type": "string"
},
"cidrAllowRules": {
"type": "integer",
"format": "int32"
},
"supportDataPersistence": {
"type": "boolean"
},
"redisFlex": {
"type": "boolean"
},
"supportInstantAndDailyBackups": {
"type": "boolean"
},
"supportReplication": {
"type": "boolean"
},
"supportClustering": {
"type": "boolean"
},
"supportSsl": {
"type": "boolean"
},
"customerSupport": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"description": "Redis Essentials subscription plan information",
"example": {
"id": 98273,
"name": "Cache 5GB",
"size": 5,
"sizeMeasurementUnit": "GB",
"provider": "AWS",
"region": "eu-west-1",
"regionId": 4,
"price": 77,
"priceCurrency": "USD",
"pricePeriod": "Month",
"maximumDatabases": 1,
"availability": "No replication",
"connections": "unlimited",
"cidrAllowRules": 4,
"supportDataPersistence": true,
"supportInstantAndDailyBackups": true,
"supportReplication": false,
"supportClustering": true,
"supportSsl": false,
"supportedAlerts": [
"throughput-higher-than"
],
"customerSupport": "Standard",
"links": [
{
"rel": "self",
"href": "http://localhost:8081/v1/fixed/plans/16583",
"type": "GET"
}
]
}
},
"AccountACLRoles": {
"type": "object",
"properties": {
"accountId": {
"type": "integer",
"format": "int32"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"description": "Redis list of ACL roles in current account",
"example": {
"accountId": 1001,
"roles": [
{
"id": 395,
"name": "role-name",
"redisRules": [
{
"ruleId": 7,
"ruleName": "Full-Access",
"databases": [
{
"subscriptionId": 126,
"databaseId": 1,
"databaseName": "DB-RCP-2-81-7"
}
]
}
],
"users": [],
"status": "error"
}
]
}
},
"tag": {
"required": [
"key",
"value"
],
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "Database tag key.",
"example": "environment"
},
"value": {
"type": "string",
"description": "Database tag value.",
"example": "production"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Database tag"
},
"BdbAvailableVersionsResponse": {
"type": "object",
"properties": {
"targets": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TargetVersion"
}
}
}
},
"SubscriptionSpec": {
"required": [
"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"
}
},
"resourceTags": {
"type": "array",
"description": "Optional. A list of resource tags to apply to the subscription. (max. 30 tags).",
"items": {
"$ref": "#/components/schemas/ResourceTag"
}
}
},
"description": "Cloud provider, region, and networking details."
},
"FixedDatabaseBackupRequest": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"databaseId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"adhocBackupPath": {
"type": "string",
"description": "Optional. Manually backs up data to this location, instead of the set 'periodicBackupPath' location.",
"example": "s3://<backup-path>"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Essentials database backup request message"
},
"DatabaseModuleSpec": {
"required": [
"name"
],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Redis advanced capability name. Use GET /database-modules for a list of available capabilities."
},
"parameters": {
"type": "object",
"additionalProperties": {
"type": "object",
"description": "Optional. Redis advanced capability parameters. Use GET /database-modules to get the available capabilities and their parameters.",
"example": {}
},
"description": "Optional. Redis advanced capability parameters. Use GET /database-modules to get the available capabilities and their parameters.",
"example": {}
}
},
"description": "Optional. Redis advanced capabilities (also known as modules) to be provisioned in the database. Use GET /database-modules to get a list of available advanced capabilities. Don't specify modules for database versions 8 and above. All capabilities are bundled in the database by default."
},
"FixedSubscriptionCreateRequest": {
"required": [
"name",
"planId"
],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "New Essentials subscription name.",
"example": "My new subscription"
},
"planId": {
"type": "integer",
"description": "An Essentials plan ID. The plan describes the dataset size, cloud provider and region, and available database configuration options. Use GET /fixed/plans to get a list of available options.",
"format": "int32"
},
"paymentMethod": {
"type": "string",
"description": "Optional. The payment method for the subscription. If set to \u2018credit-card\u2019, \u2018paymentMethodId\u2019 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 \u2018paymentMethod\u2019 is \u2018marketplace\u2019, but required for all other account types.",
"format": "int32"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Essentials subscription create request"
},
"SubscriptionRegionNetworkingSpec": {
"type": "object",
"properties": {
"deploymentCIDR": {
"type": "string",
"description": "Optional. Deployment CIDR mask. Must be a valid CIDR format with a range of 256 IP addresses. Default for single-region subscriptions: If using Redis internal cloud account, 192.168.0.0/24",
"example": "10.0.0.0/24"
},
"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 (for example: 'vpc-0125be68a4625884ad') and must exist within the hosting account.",
"example": "<vpc-identifier>"
},
"subnetIds": {
"type": "array",
"description": "Optional. Enter a list of subnets identifiers that exists in the hosted AWS account. Subnet Identifier must exist within the hosting account.",
"items": {
"type": "string",
"description": "Optional. Enter a list of subnets identifiers that exists in the hosted AWS account. Subnet Identifier must exist within the hosting account."
}
},
"securityGroupId": {
"type": "string",
"description": "Optional. Enter a security group identifier that exists in the hosted AWS account. Security group Identifier must be in a valid format (for example: 'sg-0125be68a4625884ad') and must exist within the hosting account."
}
},
"description": "Optional. Cloud networking details, per region. Required if creating an Active-Active subscription."
},
"SubscriptionResourceTagsUpdateRequest": {
"required": [
"resourceTags"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"resourceTags": {
"type": "array",
"description": "List of resource tags to apply to the subscription. This will replace all existing tags.",
"items": {
"$ref": "#/components/schemas/ResourceTag"
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Resource tags update request"
},
"DatabaseTagsUpdateRequest": {
"required": [
"tags"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"databaseId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"tags": {
"type": "array",
"description": "List of database tags.",
"items": {
"$ref": "#/components/schemas/tag"
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Database tags update request message"
},
"PrivateLinkConnectionsDisassociateRequest": {
"required": [
"connections"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"connections": {
"type": "array",
"description": "List of connections to disassociate from the private link. Each connection must include associationId, type, and principalId.",
"items": {
"$ref": "#/components/schemas/PrivateLinkConnectionDisassociate"
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Private Link connections disassociate request"
},
"AccountUsers": {
"type": "object",
"properties": {
"account": {
"type": "integer",
"format": "int32"
}
},
"description": "RedisLabs list of users in current account",
"example": {
"account": 1001,
"users": [
{
"id": 60192,
"name": "Clifford O'neill",
"email": "clifford.mail@gmail.com",
"role": "Viewer",
"userType": "Local",
"hasApiKey": false,
"options": {
"billing": false,
"emailAlerts": false,
"operationalEmails": false,
"mfaEnabled": false
}
}
]
}
},
"FixedDatabaseUpgradeRedisVersionRequest": {
"required": [
"targetRedisVersion"
],
"type": "object",
"properties": {
"databaseId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"targetRedisVersion": {
"type": "string",
"description": "The target Redis version the database will be upgraded to. Use GET /subscriptions/redis-versions to get a list of available Redis versions.",
"example": "7.4"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Upgrades the specified Essentials database to a later Redis version."
},
"CrdbUpdatePropertiesRequest": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"databaseId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"name": {
"type": "string",
"description": "Optional. Updated database name. 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"
},
"dryRun": {
"type": "boolean",
"description": "Optional. When 'false': Creates a deployment plan and deploys it, updating any resources required by the plan. When 'true': creates a read-only deployment plan and does not update any resources. Default: 'false'",
"example": false
},
"memoryLimitInGb": {
"minimum": 0.1,
"exclusiveMinimum": false,
"type": "number",
"description": "Optional. Total memory in GB, including replication and other overhead. You cannot set both datasetSizeInGb and totalMemoryInGb.",
"format": "double",
"example": 1,
"deprecated": true
},
"datasetSizeInGb": {
"minimum": 0.1,
"exclusiveMinimum": false,
"type": "number",
"description": "Optional. The maximum amount of data in the dataset for this database in GB. You cannot set both datasetSizeInGb and totalMemoryInGb. If \u2018replication\u2019 is 'true', the database\u2019s total memory will be twice as large as the datasetSizeInGb.If \u2018replication\u2019 is false, the database\u2019s total memory will be the datasetSizeInGb value.",
"format": "double",
"example": 1
},
"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'"
},
"useExternalEndpointForOSSClusterApi": {
"type": "boolean",
"description": "Optional. If set to 'true', the database will use the external endpoint for OSS Cluster API. This setting blocks the database's private endpoint. Can only be set if 'supportOSSClusterAPI' is 'true'.",
"example": false
},
"clientSslCertificate": {
"type": "string",
"description": "Optional. A public key client TLS/SSL certificate with new line characters replaced with '\\n'. If specified, mTLS authentication will be required to authenticate user connections if it is not already required. If set to an empty string, TLS client certificates will be removed and mTLS will not be required. TLS connection may still apply, depending on the value of 'enableTls'.",
"deprecated": true
},
"clientTlsCertificates": {
"type": "array",
"description": "Optional. A list of client TLS/SSL certificates. If specified, mTLS authentication will be required to authenticate user connections. If set to an empty list, TLS client certificates will be removed and mTLS will not be required. TLS connection may still apply, depending on the value of 'enableTls'.",
"items": {
"$ref": "#/components/schemas/DatabaseCertificateSpec"
}
},
"enableTls": {
"type": "boolean",
"description": "Optional. When 'true', requires TLS authentication for all connections - mTLS with valid clientTlsCertificates, regular TLS when clientTlsCertificates is not provided. If enableTls is set to 'false' while mTLS is required, it will remove the mTLS requirement and erase previously provided clientTlsCertificates."
},
"globalDataPersistence": {
"type": "string",
"description": "Optional. Type and rate of data persistence in all regions that don't set local 'dataPersistence'.",
"enum": [
"none",
"aof-every-1-second",
"aof-every-write",
"snapshot-every-1-hour",
"snapshot-every-6-hours",
"snapshot-every-12-hours"
]
},
"globalPassword": {
"type": "string",
"description": "Optional. Changes the password used to access the database in all regions that don't set a local 'password'."
},
"globalEnableDefaultUser": {
"type": "boolean",
"description": "Optional. When 'true', allows connecting to the database with the 'default' user in all regions that don't set local 'enableDefaultUser'. When 'false', only defined access control users can connect to the database."
},
"globalSourceIp": {
"type": "array",
"description": "Optional. List of source IP addresses or subnet masks to whitelist in all regions that don't set local 'sourceIp' settings. If set, Redis clients will be able to connect to this database only from within the specified source IP addresses ranges. Example: ['192.168.10.0/32', '192.168.12.0/24']",
"items": {
"type": "string",
"description": "Optional. List of source IP addresses or subnet masks to whitelist in all regions that don't set local 'sourceIp' settings. If set, Redis clients will be able to connect to this database only from within the specified source IP addresses ranges. Example: ['192.168.10.0/32', '192.168.12.0/24']"
}
},
"globalAlerts": {
"type": "array",
"description": "Optional. Redis database alert settings in all regions that don't set local 'alerts'.",
"items": {
"$ref": "#/components/schemas/DatabaseAlertSpec"
}
},
"regions": {
"type": "array",
"description": "Optional. A list of regions and local settings to update.",
"items": {
"$ref": "#/components/schemas/LocalRegionProperties"
}
},
"dataEvictionPolicy": {
"type": "string",
"description": "Optional. Data eviction policy.",
"enum": [
"allkeys-lru",
"allkeys-lfu",
"allkeys-lrm",
"allkeys-random",
"volatile-lru",
"volatile-lfu",
"volatile-lrm",
"volatile-random",
"volatile-ttl",
"noeviction"
]
},
"autoMinorVersionUpgrade": {
"type": "boolean",
"description": "Optional. Automatically upgrades the database to newer minor versions within the same major release. Applies to version 8.4 and above."
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Active-Active database update local properties request message"
},
"AclRedisRuleCreateRequest": {
"required": [
"name",
"redisRule"
],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Redis ACL rule name.",
"example": "ACL-rule-example"
},
"redisRule": {
"type": "string",
"description": "Redis ACL rule pattern. See [ACL syntax](https://redis.io/docs/latest/operate/rc/security/access-control/data-access-control/configure-acls/#define-permissions-with-acl-syntax) to learn how to define rules.",
"example": "+set allkeys allchannels"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "ACL redis rule create request"
},
"Cidr": {
"type": "object",
"properties": {
"cidrAddress": {
"type": "string"
}
},
"description": "Optional. List of transit gateway attachment CIDRs.",
"example": [
"10.10.10.0/24",
"10.10.20.0/24"
]
},
"SubscriptionRegionSpec": {
"required": [
"region"
],
"type": "object",
"properties": {
"region": {
"type": "string",
"description": "Deployment region as defined by the cloud provider.",
"example": "us-east-1"
},
"multipleAvailabilityZones": {
"type": "boolean",
"description": "Optional. Support deployment on multiple availability zones within the selected region. Default: 'false'",
"example": false
},
"preferredAvailabilityZones": {
"type": "array",
"description": "Optional. List the zone ID(s) for your preferred availability zone(s) for the cloud provider and region. If \u2018multipleAvailabilityZones\u2019 is set to 'true', you must list three availability zones. Otherwise, list one availability zone.",
"items": {
"type": "string",
"description": "Optional. List the zone ID(s) for your preferred availability zone(s) for the cloud provider and region. If \u2018multipleAvailabilityZones\u2019 is set to 'true', you must list three availability zones. Otherwise, list one availability zone."
}
},
"networking": {
"$ref": "#/components/schemas/SubscriptionRegionNetworkingSpec"
}
},
"description": "The cloud provider region or list of regions (Active-Active only) and networking details."
},
"VpcPeeringCreateGcpRequest": {
"required": [
"vpcNetworkName",
"vpcProjectUid"
],
"type": "object",
"properties": {
"provider": {
"type": "string"
},
"vpcProjectUid": {
"type": "string",
"description": "VPC project ID.",
"example": "<vpc-identifer>"
},
"vpcNetworkName": {
"type": "string",
"description": "VPC network name.",
"example": "<name>"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Vpc peering creation request message"
},
"DatabaseCreateRequest": {
"required": [
"name"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"dryRun": {
"type": "boolean",
"description": "Optional. When 'false': Creates a deployment plan and deploys it, creating any resources required by the plan. When 'true': creates a read-only deployment plan and does not create any resources. Default: 'false'",
"example": false
},
"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"
},
"protocol": {
"type": "string",
"description": "Optional. Database protocol. Only set to 'memcached' if you have a legacy application. Default: 'redis'",
"enum": [
"redis",
"memcached"
]
},
"port": {
"type": "integer",
"description": "Optional. TCP port on which the database is available (10000-19999). Generated automatically if not set.",
"format": "int32",
"example": 10000
},
"memoryLimitInGb": {
"minimum": 0.1,
"exclusiveMinimum": false,
"type": "number",
"description": "Optional. Total memory in GB, including replication and other overhead. You cannot set both datasetSizeInGb and totalMemoryInGb.",
"format": "double",
"example": 1,
"deprecated": true
},
"datasetSizeInGb": {
"minimum": 0.1,
"exclusiveMinimum": false,
"type": "number",
"description": "Optional. The maximum amount of data in the dataset for this database in GB. You cannot set both datasetSizeInGb and totalMemoryInGb. If \u2018replication\u2019 is 'true', the database\u2019s total memory will be twice as large as the datasetSizeInGb. If \u2018replication\u2019 is false, the database\u2019s total memory will be the datasetSizeInGb value.",
"format": "double",
"example": 1
},
"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"
},
"autoMinorVersionUpgrade": {
"type": "boolean",
"description": "Optional. Automatically upgrades the database to newer minor versions within the same major release. Applies to version 8.4 and above. Default: true."
},
"respVersion": {
"type": "string",
"description": "Optional. Redis Serialization Protocol version. Must be compatible with Redis version.",
"example": "resp3",
"enum": [
"resp2",
"resp3"
]
},
"supportOSSClusterApi": {
"type": "boolean",
"description": "Optional. Support [OSS Cluster API](https://redis.io/docs/latest/operate/rc/databases/configuration/clustering/#oss-cluster-api). Default: 'false'",
"example": false
},
"useExternalEndpointForOSSClusterApi": {
"type": "boolean",
"description": "Optional. If set to 'true', the database will use the external endpoint for OSS Cluster API. This setting blocks the database's private endpoint. Can only be set if 'supportOSSClusterAPI' is 'true'. Default: 'false'",
"example": false
},
"dataPersistence": {
"type": "string",
"description": "Optional. Type and rate of data persistence in persistent storage. Default: 'none'",
"enum": [
"none",
"aof-every-1-second",
"aof-every-write",
"snapshot-every-1-hour",
"snapshot-every-6-hours",
"snapshot-every-12-hours"
]
},
"dataEvictionPolicy": {
"type": "string",
"description": "Optional. Data eviction policy. Default: 'volatile-lru'",
"enum": [
"allkeys-lru",
"allkeys-lfu",
"allkeys-lrm",
"allkeys-random",
"volatile-lru",
"volatile-lfu",
"volatile-lrm",
"volatile-random",
"volatile-ttl",
"noeviction"
]
},
"replication": {
"type": "boolean",
"description": "Optional. Sets database replication. Default: 'true'"
},
"replicaOf": {
"type": "array",
"description": "Optional. This database will be a replica of the specified Redis databases provided as one or more URI(s). Example: 'redis://user:password@host:port'. If the URI provided is a Redis Cloud database, only host and port should be provided. Example: ['redis://endpoint1:6379', 'redis://endpoint2:6380'].",
"deprecated": true,
"items": {
"type": "string",
"description": "Optional. This database will be a replica of the specified Redis databases provided as one or more URI(s). Example: 'redis://user:password@host:port'. If the URI provided is a Redis Cloud database, only host and port should be provided. Example: ['redis://endpoint1:6379', 'redis://endpoint2:6380']."
}
},
"replica": {
"$ref": "#/components/schemas/ReplicaOfSpec"
},
"throughputMeasurement": {
"$ref": "#/components/schemas/DatabaseThroughputSpec"
},
"localThroughputMeasurement": {
"type": "array",
"description": "Optional. Expected throughput per region for an Active-Active database. Default: 1000 read and write ops/sec for each region",
"items": {
"$ref": "#/components/schemas/LocalThroughput"
}
},
"averageItemSizeInBytes": {
"type": "integer",
"description": "Optional. Relevant only to ram-and-flash (also known as Redis-Flex/Auto-Tiering) subscriptions. Estimated average size in bytes of the items stored in the database. Default: 1000",
"format": "int64",
"deprecated": true
},
"ramPercentage": {
"type": "integer",
"description": "Optional. Relevant only to ram-and-flash (also known as Redis-Flex/Auto-Tiering) subscriptions. The percentage of data to be stored in RAM. Must be between 10 and 50 in steps of 10 (10, 20, 30, 40, 50). Default: 20",
"format": "int32",
"example": 20
},
"periodicBackupPath": {
"type": "string",
"description": "Optional. The path to a backup storage location. If specified, the database will back up every 24 hours to this location, and you can manually back up the database to this location at any time.",
"example": "s3://<backup-path>",
"deprecated": true
},
"remoteBackup": {
"$ref": "#/components/schemas/DatabaseBackupConfig"
},
"sourceIp": {
"type": "array",
"description": "Optional. List of source IP addresses or subnet masks to allow. If specified, Redis clients will be able to connect to this database only from within the specified source IP addresses ranges. Example: '['192.168.10.0/32', '192.168.12.0/24']'",
"items": {
"type": "string",
"description": "Optional. List of source IP addresses or subnet masks to allow. If specified, Redis clients will be able to connect to this database only from within the specified source IP addresses ranges. Example: '['192.168.10.0/32', '192.168.12.0/24']'"
}
},
"clientSslCertificate": {
"type": "string",
"description": "Optional. A public key client TLS/SSL certificate with new line characters replaced with '\\n'. If specified, mTLS authentication will be required to authenticate user connections. Default: 'null'",
"deprecated": true
},
"clientTlsCertificates": {
"type": "array",
"description": "Optional. A list of client TLS/SSL certificates. If specified, mTLS authentication will be required to authenticate user connections.",
"items": {
"$ref": "#/components/schemas/DatabaseCertificateSpec"
}
},
"enableTls": {
"type": "boolean",
"description": "Optional. When 'true', requires TLS authentication for all connections - mTLS with valid clientTlsCertificates, regular TLS when clientTlsCertificates is not provided. Default: 'false'"
},
"password": {
"type": "string",
"description": "Optional. Password to access the database. If not set, a random 32-character alphanumeric password will be automatically generated. Can only be set if 'protocol' is 'redis'."
},
"saslUsername": {
"type": "string",
"description": "Optional. Memcached (SASL) Username to access the database. If not set, the username will be set to a 'mc-' prefix followed by a random 5 character long alphanumeric. Can only be set if 'protocol' is 'memcached'."
},
"saslPassword": {
"type": "string",
"description": "Optional. Memcached (SASL) Password to access the database. If not set, a random 32 character long alphanumeric password will be automatically generated. Can only be set if 'protocol' is 'memcached'."
},
"alerts": {
"type": "array",
"description": "Optional. Redis database alert details.",
"items": {
"$ref": "#/components/schemas/DatabaseAlertSpec"
}
},
"modules": {
"type": "array",
"description": "Optional. Redis advanced capabilities (also known as modules) to be provisioned in the database. Use GET /database-modules to get a list of available advanced capabilities. Don't specify modules for database versions 8 and above. All capabilities are bundled in the database by default.",
"items": {
"$ref": "#/components/schemas/DatabaseModuleSpec"
}
},
"shardingType": {
"type": "string",
"description": "Optional. Database [Hashing policy](https://redis.io/docs/latest/operate/rc/databases/configuration/clustering/#manage-the-hashing-policy).",
"enum": [
"default-regex-rules",
"custom-regex-rules",
"redis-oss-hashing"
]
},
"commandType": {
"type": "string",
"readOnly": true
},
"queryPerformanceFactor": {
"type": "string",
"description": "Optional. The query performance factor adds extra compute power specifically for search and query databases. You can increase your queries per second by the selected factor.",
"example": "2x"
}
},
"description": "Database definition"
},
"Region": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string"
},
"provider": {
"type": "string",
"enum": [
"AWS",
"GCP"
]
}
},
"description": "RedisLabs region information"
},
"TasksStateUpdate": {
"type": "object",
"properties": {
"tasks": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TaskStateUpdate"
}
}
}
},
"AclUserUpdateRequest": {
"type": "object",
"properties": {
"userId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"role": {
"type": "string",
"description": "Optional. Changes the ACL role assigned to the user. Use GET '/acl/roles' to get a list of database access roles.",
"example": "ACL-role-example"
},
"password": {
"type": "string",
"description": "Optional. Changes the user's database password.",
"example": "ab123AB$%^"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "ACL user update request"
},
"PrivateLinkConnectionDisassociate": {
"required": [
"associationId",
"principalId",
"type"
],
"type": "object",
"properties": {
"associationId": {
"type": "string",
"description": "Resource share association ID",
"example": "rsa-12345678"
},
"connectionId": {
"type": "string",
"description": "VPC endpoint connection ID",
"example": "vpce-con-12345678"
},
"type": {
"type": "string",
"description": "Type of the connection",
"example": "vpc_endpoint"
},
"principalId": {
"type": "string",
"description": "Principal ID that owns the connection, e.g. AWS account ID",
"example": "123456789012"
}
},
"description": "Private link connection information for disassociation request"
},
"ProcessorResponse": {
"type": "object",
"properties": {
"resourceId": {
"type": "integer",
"format": "int32"
},
"additionalResourceId": {
"type": "integer",
"format": "int32"
},
"resource": {
"type": "object"
},
"error": {
"type": "string",
"enum": [
"UNAUTHORIZED",
"ACCOUNT_POC_INACTIVE_PENDING",
"CLOUD_ACCOUNT_NOT_ACTIVE",
"CLOUD_ACCOUNT_NOT_FOUND",
"CLOUD_ACCOUNT_USED",
"CLOUD_ACCOUNT_INVALID_CREDS",
"CLOUD_ACCOUNT_NAME_EXISTS",
"CLOUD_ACCOUNT_ACCESS_KEY_EXISTS",
"CLOUD_ACCOUNT_PERMISSION_FAILED",
"CLOUD_ACCOUNT_ALLOCATION_FAILURE",
"NOT_KNOWN_CLOUD_PROVIDER",
"MULTIPLE_CLOUD_PROVIDERS_NOT_SUPPORTED",
"SUBSCRIPTION_NOT_ACTIVE",
"SUBSCRIPTION_CONTAINS_NON_ACTIVE_DATABASE",
"SUBSCRIPTION_NOT_FOUND",
"SUBSCRIPTION_IN_USE",
"SUBSCRIPTION_CA_PROVIDER_MISMATCH",
"SUBSCRIPTION_NETWORKING_MISSING",
"NETWORKING_CIDR_MISSING",
"SUBSCRIPTION_INVALID_CIDR",
"NETWORKING_SECURITY_GROUP_MISSING",
"NETWORKING_SUBNET_IDS_MISSING",
"NETWORKING_VPC_ID_MISSING",
"NETWORKING_CIDR_IS_NOT_SUPPORTED",
"NETWORKING_VPC_WITH_SUBNETS_AND_SECURITY_GROUP_IS_NOT_SUPPORTED",
"NETWORKING_VPC_WITH_SUBNETS_AND_SECURITY_GROUP_IS_NOT_SUPPORTED_FOR_INTERNAL_CLOUD_ACCOUNT",
"INVALID_NUMBER_OF_SUBNET_IDS",
"SUBSCRIPTION_PI_NOT_FOUND",
"SUBSCRIPTION_INVALID_REGION_NAME",
"SUBSCRIPTION_INVALID_REGION_ID",
"SUBSCRIPTION_BAD_PREFERRED_AZ_SIZE",
"SUBSCRIPTION_PREFERRED_AZ_INVALID_VALUE",
"SUBSCRIPTION_PREFERRED_AZ_MUST_BE_DEFINED_ONCE",
"SUBSCRIPTION_PREFERRED_AZ_IS_DISABLED",
"SUBSCRIPTION_MUST_HAVE_AT_LEAST_ONE_DATABASE",
"SUBSCRIPTION_REDIS_VERSION_INVALID_VALUE",
"SUBSCRIPTION_REDIS_VERSION_CONFLICT",
"ACTIVE_ACTIVE_SUBSCRIPTION_PREVIEW_REDIS_VERSION_IS_NOT_SUPPORTED",
"SUBSCRIPTION_GCP_ALLOW_ONLY_INTERNAL",
"CLUSTER_UNDER_MAINTENANCE",
"ACTIVE_ACTIVE_SUBSCRIPTION_IS_NOT_SUPPORTED",
"RESOURCE_TAGS_EXCEEDS_MAXIMUM_COUNT",
"RESOURCE_TAG_KEY_EXCEEDS_MAXIMUM_LENGTH",
"RESOURCE_TAG_VALUE_EXCEEDS_MAXIMUM_LENGTH",
"RESOURCE_TAGS_NOT_ALLOWED_WITH_INTERNAL_CLOUD_ACCOUNT",
"RESOURCE_TAGS_NOT_ALLOWED",
"RESOURCE_TAGS_NAME_NOT_ALLOWED",
"RESOURCE_TAGS_EMPTY_KEY",
"RESOURCE_TAGS_DUPLICATE_KEY",
"RESOURCE_TAGS_MISSING_VALUE",
"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",
"CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_MISSING_GET_IAM_POLICY_PERMISSIONS",
"CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_DISABLED_KEY",
"CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_INVALID_KEY_NAME",
"CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_WRONG_REGION",
"CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_NOT_ALLOWED_WITH_CLOUD_PROVIDER_MANAGED_KEY",
"CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_NOT_ALLOWED_WITH_INTERNAL_CLOUD_ACCOUNT",
"CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_REQUIRED_FOR_EXTERNAL_CLOUD_ACCOUNT",
"CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_DELETION_GRACE_PERIOD_REQUIRED",
"CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_INVALID_NUMBER_OF_KEYS",
"CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_REGION_NOT_REQUIRED",
"CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_REGION_REQUIRED",
"CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_MISSING_KEYS",
"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_UPDATE_IS_NOT_SUPPORTED",
"CUSTOMER_MANAGED_PERSISTENT_STORAGE_ENCRYPTION_KEY_SUBSCRIPTION_INVALID_STATUS",
"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",
"PLANNER_TIMEOUT",
"PLANNER_FAILURE",
"PLANNER_NOT_ENOUGH_AZS",
"PLANNER_INVALID_INSTANCE_TYPE_PER_AZ",
"PLANNER_MODULE_PLAN_CLUSTERING_ERROR",
"PLANNER_MODULE_PLAN_RESHARDING_ERROR",
"PLANNER_INVALID_PLAN",
"PLANNER_INVALID_SIZE",
"PLANNER_INVALID_NUMBER",
"PLANNER_INVALID_THROUGHPUT",
"PROVISION_FAILURE",
"DATABASE_NOT_ACTIVE",
"DATABASE_NOT_FOUND",
"DATABASE_SUBSCRIPTION_MISMATCH",
"DATABASE_CANT_EDIT_THROUGHPUT_BY",
"DATABASE_INVALID_SHARDS_COUNT",
"DATABASE_CONTAIN_MEMCACHED_USERNAME",
"DATABASE_CONTAIN_MEMCACHED_PASSWORD",
"DATABASE_SUBSCRIPTION_IN_PENDING_STATUS",
"DATABASE_THROUGHPUT_TOO_BIG",
"DATABASE_INVALID_THROUGHPUT_INCREMENT",
"DATABASE_MODULE_NOT_SUPPORTING_SHARD_THROUGHPUT_OPTION",
"DATABASE_MODULE_NOT_SUPPORTED",
"DATABASE_QUERY_PERFORMANCE_FACTOR_INVALID_VALUE",
"DATABASE_QUERY_PERFORMANCE_FACTOR_SEARCH_IS_REQUIRED",
"DATABASE_QUERY_PERFORMANCE_FACTOR_IS_NOT_SUPPORTED",
"DATABASE_QUERY_PERFORMANCE_FACTOR_IS_NOT_SUPPORTED_ON_ACTIVE_ACTIVE",
"REDISEARCH_SUPPORTS_ONLY_OPERATIONS_PER_SECOND_AS_THROUGHPUT_MEASUREMENT",
"REDIS_GRAPH_SUPPORTS_ONLY_OPS_PER_SECOND_AS_THROUGHPUT_MEASUREMENT",
"DATABASE_RESP_VERSION_IS_NOT_SUPPORTED",
"DATABASE_RESP_VERSION_IS_NOT_SUPPORTED_ON_CREATE_SUBSCRIPTION",
"DATABASE_ROF_NOT_SUPPORTED",
"DATABASE_REDISGRAPH_OVERSIZED",
"DATABASE_BACKUP_NOT_SUPPORTED",
"DATABASE_EVICTION_NOT_SUPPORTED",
"DATABASE_AOF_NOT_SUPPORTED",
"DATABASE_REPLICA_OF_NOT_SUPPORTED",
"DATABASE_SNAPSHOT_NOT_SUPPORTED",
"DATABASE_CLUSTERING_NOT_SUPPORTED",
"DATABASE_INVALID_THREAD_NUMBER",
"DATABASE_HASH_NOT_SUPPORTED",
"DATABASE_RESHARD_NOT_SUPPORTED",
"DATABASE_FEATURE_NOT_SUPPORTED",
"DATABASE_NAME_EXISTS",
"DATABASE_NAME_DUPLICATE",
"DATABASE_INVALID_NAME",
"DATABASE_NAME_TOO_LONG",
"DATABASE_SIZE_TOO_SMALL",
"DATABASE_SIZE_TOO_BIG",
"DATABASE_SIZE_LIMIT_NOT_DEFINED",
"DATABASE_SIZE_LIMIT_INVALID_TOO_MANY_MEMORY_SPECIFICATIONS",
"DATABASE_PASSWORD_IS_BLANK",
"DATABASE_PASSWORD_IS_TOO_LONG",
"DATABASE_REDIS_SEARCH_MODULE_VALUE_IS_NOT_INTEGER",
"DATABASE_REDIS_SEARCH_MODULE_VALUE_NOT_IN_RANGE",
"DATABASE_MODULE_MUST_BE_DEFINED_ONCE",
"DATABASE_MEMCACHED_CONTAINS_MODULES",
"DATABASE_MEMCACHED_NOT_SUPPORT_OSS_CLUSTER_API",
"REDIS_ON_FLASH_DATABASE_MEMCACHED_PROTOCOL_IS_NOT_ALLOWED",
"DATABASE_MEMCACHED_CONTAINS_REDIS_PASSWORD",
"DATABASE_MEMCACHED_CONTAINS_REDIS_DEFAULT_USER",
"DATABASE_MEMCACHED_SASL_USERNAME_IS_BLANK",
"DATABASE_MEMCACHED_SASL_PASSWORD_IS_BLANK",
"DATABASE_MEMCACHED_SASL_PASSWORD_MAX_LENGTH",
"DATABASE_REDIS_FLEX_CONTAINS_MODULES",
"DATABASE_AVERAGE_ITEM_SIZE_NOT_ALLOWED",
"DATABASE_RAM_PERCENTAGE_NOT_ALLOWED",
"DATABASE_RAM_PERCENTAGE_NOT_SUPPORTED",
"DATABASE_RAM_PERCENTAGE_IS_INVALID",
"DATABASE_AVERAGE_ITEM_SIZE_IS_DEPRECATED",
"DATABASE_MEMORY_LIMIT_IS_INVALID_FOR_ROF",
"DATABASE_DATASET_SIZE_IS_INVALID_FOR_ROF",
"DATABASE_SIZE_SMALLER_THAN_USAGE",
"DATABASE_USAGE_EXCEEDS_GLOBAL_LIMIT",
"DATABASE_USAGE_EXCEEDS_LOCAL_LIMIT",
"DATABASE_INVALID_CERT",
"DATABASE_EXPIRED_CERT",
"DATABASE_MISSING_CERT",
"DATABASE_CLIENT_SSL_CERTIFICATE_DEPRECATED",
"DATABASE_CLIENT_SSL_CERTIFICATE_MORE_THAN_1_ACTIVE",
"DATABASE_SIP_OVER_LIMIT",
"DATABASE_INVALID_SIP",
"DATABASE_INVALID_SIP_FREE_PLAN",
"DATABASE_INVALID_ALERTS",
"DATABASE_INVALID_MODULE",
"DATABASE_INVALID_MODULE_PARAMETER",
"DATABASE_INVALID_MODULE_PARAMETER_VALUE",
"DATABASE_EXPLICIT_MODULES_NOT_SUPPORTED_FOR_THIS_REDIS_VERSION",
"DATABASE_INVALID_ALERT_VALUE",
"DATABASE_SHARDING_TYPE_IS_IMMUTABLE",
"DATABASE_SHARDING_TYPE_IS_NOT_SUPPORTED",
"DATABASE_REGEX_RULES_NO_CLUSTERING",
"DATABASE_REGEX_RULES_CHANGES_BLOCKED",
"DATABASE_OSS_CLUSTER_NOT_SUPPORTED",
"DATABASE_EXTERNAL_ENDPOINT_WITHOUT_OSS_CLUSTER",
"CUSTOM_REGEX_RULES_IS_NOT_ALLOWED_WITHOUT_ENABLE_DATABASE_CLUSTERING_IS_TRUE",
"DATABASE_OSS_CLUSTER_CUSTOM_REGEX_NOT_SUPPORTED",
"DATABASE_OSS_CLUSTER_REPLICA_NOT_SUPPORTED",
"DATABASE_REPLICA_OF_PROPERTY_DEPRECATED",
"DATABASE_REPLICA_PER_SOURCE_OVER_LIMIT",
"DATABASE_REPLICA_CYCLE",
"DATABASE_INVALID_REPLICA",
"DATABASE_UNSUPPORTED_REPLICA_OF_REDIS_FLEX",
"DATABASE_REPLICAS_OVER_LIMIT",
"DATABASE_BACKUP_DISABLED",
"DATABASE_BACKUP_FAILED",
"DATABASE_BACKUP_NOT_CONFIGURED",
"DATABASE_INVALID_BACKUP_PATH",
"DATABASE_INVALID_BACKUP_INTERVAL",
"DATABASE_INVALID_TOO_MANY_BACKUP_SPECIFICATIONS",
"DATABASE_INVALID_BACKUP_STORAGE_TYPE",
"DATABASE_INVALID_IMPORT_SOURCE_TYPE",
"DATABASE_INVALID_BACKUP_TIME_UTC",
"DATABASE_INVALID_BACKUP_INTERVAL_AND_TIME_UTC_MISMATCH",
"DATABASE_INVALID_BACKUP_PATH_USED_BY_ANOTHER_ACCOUNT",
"DATABASE_INVALID_BACKUP_CONFIGURATION",
"DATABASE_INVALID_REGEX_RULES",
"DATABASE_INVALID_QUANTITY",
"DATABASE_REPLICA_OF_VERSION_NOT_COMPATIBLE",
"DATABASE_REPLICA_OF_SOURCE_INCOMPATIBLE",
"DATABASE_IMPORT_FAILED",
"DATABASE_IMPORT_FROM_NON_OSS",
"DATABASE_IMPORT_SOURCE_NOT_FOUND",
"DUPLICATE_DATABASE_IMPORT_SOURCE_PATH",
"DATABASE_IMPORT_WRONG_SIZE",
"DATABASE_IMPORT_URI_NOT_PROVIDED",
"DATABASE_IMPORT_MULTIPLE_REDIS_SOURCES",
"DATABASE_IMPORT_REDIS_BAD_URI",
"DATABASE_REPLICA_OF_BAD_URI",
"DATABASE_IMPORT_S3_BAD_URI",
"DATABASE_IMPORT_HTTP_BAD_URI",
"DATABASE_IMPORT_FTP_BAD_URI",
"DATABASE_IMPORT_AZURE_BAD_URI",
"DATABASE_IMPORT_GCS_BAD_URI",
"DATABASE_IMPORT_NOT_ALLOWED",
"DATABASE_PORT_INVALID_VALUE",
"DATABASE_PORT_IS_UNAVAILABLE",
"DATABASE_CUSTOM_PORT_NOT_SUPPORTED",
"DATABASE_CUSTOM_PORT_NOT_UNIQUE",
"DATABASE_AVERAGE_ITEM_SIZE_INVALID_VALUE",
"DATABASE_REDIS_VERSION_IS_NOT_SUPPORTED",
"DATABASE_REDIS_VERSION_IS_NOT_SUPPORTED_FOR_REGION",
"DATABASE_REDIS_VERSION_IS_NOT_SUPPORTED_FOR_MEMCACHED",
"DATABASE_REDIS_VERSION_IS_REQUIRED",
"DATABASE_REDIS_VERSION_INVALID_VALUE",
"INCOMPATIBLE_TF_PROVIDER",
"DESIRED_SOFTWARE_VERSION_IS_NOT_SUPPORTED",
"CONNECTIVITY_REQUESTS_ON_CUSTOMER_MANAGED_VPC_SUBSCRIPTION",
"VPC_PEERING_NOT_ACTIVE",
"VPC_PEERING_GENERAL_ERROR",
"VPC_PEERING_INVALID_ACCOUNT",
"VPC_PEERING_INVALID_VPC",
"VPC_PEERING_INVALID_CIDR",
"VPC_PEERING_CIDR_IS_MISSING",
"VPC_PEERING_TOO_MANY_CIDR_SPECIFICATIONS",
"VPC_PEERING_INVALID_REGION",
"VPC_PEERING_ALREADY_EXIST",
"VPC_PEERING_NOT_FOUND",
"VPC_PEERING_INVALID_PROJECT",
"VPC_PEERING_CLUSTER_NOT_ACTIVE",
"VPC_PEERING_CIDR_OVERLAP",
"VPC_PEERING_BELONGS_TO_DIFFERENT_CLOUD_PROVIDER",
"VPC_PEERING_IS_NOT_KNOWN_CLOUD_PROVIDER",
"CREATING_AN_ACTIVE_ACTIVE_VPC_PEERING_IS_NOT_ALLOWED_WITH_SINGLE_REGION_SUBSCRIPTION",
"UPDATING_AN_ACTIVE_ACTIVE_VPC_PEERING_IS_NOT_ALLOWED_WITH_SINGLE_REGION_SUBSCRIPTION",
"DELETING_AN_ACTIVE_ACTIVE_VPC_PEERING_IS_NOT_ALLOWED_WITH_SINGLE_REGION_SUBSCRIPTION",
"DELETING_AN_ACTIVE_ACTIVE_VPC_PEERING_IS_NOT_ALLOWED_FOR_A_SUBSCRIPTION_WITH_NO_VPC_PEERINGS",
"ACTIVE_ACTIVE_VPC_PEERING_NOT_FOUND",
"VPC_PEERING_MULTIPLE_CIDRS_IS_DISABLED",
"TGW_ACCEPTING_AN_ACTIVE_ACTIVE_TGW_RESOURCE_SHARE_IS_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"TGW_REJECTING_AN_ACTIVE_ACTIVE_TGW_RESOURCE_SHARE_IS_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"TGW_ACCEPTING_A_FLEXIBLE_SUBSCRIPTION_TGW_RESOURCE_SHARE_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION",
"TGW_REJECTING_A_FLEXIBLE_SUBSCRIPTION_TGW_RESOURCE_SHARE_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION",
"TGW_CREATING_AN_ACTIVE_ACTIVE_SUBSCRIPTION_TGW_ATTACHMENT_IS_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"TGW_DELETING_AN_ACTIVE_ACTIVE_SUBSCRIPTION_TGW_ATTACHMENT_IS_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"TGW_UPDATING_AN_ACTIVE_ACTIVE_TGW_ATTACHMENT_IS_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"TGW_CREATING_A_FLEXIBLE_SUBSCRIPTION_TGW_ATTACHMENT_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION",
"TGW_UPDATING_A_FLEXIBLE_SUBSCRIPTION_TGW_ATTACHMENT_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION",
"TGW_DELETING_A_FLEXIBLE_SUBSCRIPTION_TGW_ATTACHMENT_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION",
"TGW_CLOUD_PROVIDER_IS_NOT_SUPPORTED",
"TGW_RESOURCE_SHARE_DOES_NOT_EXIST",
"TGW_DOES_NOT_EXIST",
"TGW_ATTACHMENT_DOES_NOT_EXIST",
"TGW_ATTACHMENT_IS_NOT_ACTIVE",
"TGW_ATTACHMENT_CIDRS_INVALID_LENGTH",
"TGW_ATTACHMENT_CIDRS_ARE_THE_SAME_AS_EXISTING_ONES",
"TGW_ATTACHMENT_CIDRS_REQUEST_CONTAINS_DUPLICATES",
"TGW_REGION_DOES_NOT_EXIST",
"TGW_GETTING_ACTIVE_ACTIVE_SUBSCRIPTION_TGW_IS_NOT_ALLOWED_WITH_SINGLE_REGION_SUBSCRIPTION",
"TGW_GETTING_ACTIVE_ACTIVE_SUBSCRIPTION_TGW_INVITATIONS_IS_NOT_ALLOWED_WITH_SINGLE_REGION_SUBSCRIPTION",
"TGW_GETTING_SINGLE_REGION_TGWS_IS_NOT_ALLOWED_WITH_ACTIVE_ACTIVE_SUBSCRIPTION",
"TGW_GETTING_SINGLE_REGION_TGW_INVITATIONS_IS_NOT_ALLOWED_WITH_ACTIVE_ACTIVE_SUBSCRIPTION",
"PSC_ENDPOINT_INVALID_GCP_PROJECT_ID",
"PSC_ENDPOINT_INVALID_VPC_NAME",
"PSC_ENDPOINT_INVALID_VPC_SUBNET_NAME",
"PSC_ENDPOINT_INVALID_CONNECTION_NAME",
"PSC_SERVICE_ALREADY_EXISTS",
"PSC_ENDPOINT_ALREADY_EXISTS",
"PSC_CLOUD_PROVIDER_IS_NOT_SUPPORTED",
"PSC_GET_AN_ACTIVE_ACTIVE_SUBSCRIPTION_PRIVATE_SERVICE_CONNECT_ENDPOINTS_IS_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"PSC_GET_A_FLEXIBLE_SUBSCRIPTION_PRIVATE_SERVICE_CONNECT_ENDPOINT_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION",
"PSC_CREATING_AN_ACTIVE_ACTIVE_SUBSCRIPTION_PRIVATE_SERVICE_CONNECT_IS_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"PSC_CREATING_A_FLEXIBLE_SUBSCRIPTION_PRIVATE_SERVICE_CONNECT_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION",
"PSC_DELETING_AN_ACTIVE_ACTIVE_SUBSCRIPTION_PRIVATE_SERVICE_CONNECT_IS_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"PSC_DELETING_A_FLEXIBLE_SUBSCRIPTION_PRIVATE_SERVICE_CONNECT_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION",
"PSC_CREATING_A_FLEXIBLE_SUBSCRIPTION_PRIVATE_SERVICE_CONNECT_ENDPOINT_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION",
"PSC_CREATING_AN_ACTIVE_ACTIVE_SUBSCRIPTION_PRIVATE_SERVICE_CONNECT_ENDPOINT_IS_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"PSC_CREATING_AN_ACTIVE_ACTIVE_SUBSCRIPTION_PRIVATE_SERVICE_CONNECT_IS_NOT_SUPPORTED",
"PSC_UPDATING_A_FLEXIBLE_SUBSCRIPTION_PRIVATE_SERVICE_CONNECT_ENDPOINT_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION",
"PSC_UPDATING_AN_ACTIVE_ACTIVE_SUBSCRIPTION_PRIVATE_SERVICE_CONNECT_ENDPOINT_IS_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"PSC_DELETING_A_FLEXIBLE_SUBSCRIPTION_PRIVATE_SERVICE_CONNECT_ENDPOINT_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION",
"PSC_DELETING_AN_ACTIVE_ACTIVE_SUBSCRIPTION_PRIVATE_SERVICE_CONNECT_ENDPOINT_IS_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"PSC_UPDATE_ENDPOINT_REQUEST_ACTION_INVALID_VALUE",
"PSC_UPDATE_ENDPOINT_REQUEST_CANNOT_HAVE_BOTH_ACTION_AND_OTHER_FIELDS",
"PSC_UPDATE_ENDPOINT_REQUEST_CANNOT_UPDATE_INITIALIZED_ENDPOINT",
"PSC_SERVICE_NOT_FOUND",
"PSC_ENDPOINT_NOT_FOUND",
"PSC_ENDPOINT_NOT_ACTIVE",
"PSC_ENDPOINT_NOT_CREATED_OR_DELETED",
"PSC_ENDPOINT_CANNOT_BE_DELETED_WITHOUT_DELETION_SCRIPT",
"PSC_SERVICE_CANNOT_DELETE_SERVICE_WITH_ACTIVE_ENDPOINTS",
"PSC_SERVICE_NOT_ACTIVE",
"PSC_ENDPOINT_SCRIPT_FAILED_TO_PARSE",
"CIDR_WHITELIST_GENERAL_ERROR",
"CIDR_WHITELIST_INVALID_CIDRS",
"CIDR_WHITELIST_INVALID_SG",
"CIDR_WHITELIST_LIMIT_EXCEEDED",
"CIDR_WHITELIST_DUPLICATE_CIDRS",
"CIDR_WHITELIST_DUPLICATE_SG",
"CIDR_WHITELIST_NOT_ALLOWED",
"CLIENT_PUBLIC_ACCESS_INVALID_SOURCE_IPS",
"CLIENT_PUBLIC_ACCESS_NOT_SUPPORTED",
"CLIENT_PUBLIC_ACCESS_ALREADY_SET",
"CLIENT_PUBLIC_ACCESS_ON_NON_HOSTED",
"AWS_ERROR_INSTANCE_LIMIT_EXCEEDED",
"AWS_ERROR_VPC_LIMIT_EXCEEDED",
"AWS_ERROR_INSUFFICIENT_INSTANCE_CAPACITY",
"AWS_ERROR_VOLUME_LIMIT_EXCEEDED",
"AWS_ERROR_MISMATCHING_CIDR",
"AWS_ERROR_CONFLICTING_CIDR",
"AWS_ERROR_VPC_DOES_NOT_EXIST",
"AWS_ERROR_EXISTING_VPC_EQUAL_TO_REQUESTED",
"PAYMENT_INFO_NOT_PROVIDED",
"PAYMENT_INFO_EXPIRED",
"PAYMENT_INFO_NOT_ALLOWED_IN_GCP_ACCOUNT",
"CLOUD_PROVIDER_IS_NOT_GCP_IN_GCP_ACCOUNT",
"PAYMENT_INFO_NOT_ALLOWED_IN_CONTRACT_ASSOCIATED_ACCOUNT",
"PAYMENT_INFO_CHANGE_PROHIBITED_FOR_PRO_UNDER_CONTRACT",
"LOCAL_THROUGHPUT_READ_AND_WRITE_OPERATIONS_PER_SECOND_VALUES_MUST_BE_IN_INCREMENTS_OF_500_OR_MINIMUM",
"MISSING_REGIONS_BETWEEN_CLOUD_PROVIDERS_AND_DATABASES_LOCAL_THROUGHPUT_MEASUREMENTS",
"MISSING_REGIONS_BETWEEN_LOCAL_THROUGHPUT_MEASUREMENTS_AND_SUBSCRIPTION_REGIONS",
"CRDB_ACTIVE_ACTIVE_MISSING_LOCAL_THROUGHPUT_MEASUREMENT",
"CRDB_ACTIVE_ACTIVE_REGIONS_MUST_BE_DEFINED_ONCE",
"ACTIVE_ACTIVE_CREATE_A_REGION_MUST_CONTAIN_DATABASE_SPEC_TO_ALL_CRDBS_IN_SUBSCRIPTION",
"ACTIVE_ACTIVE_CREATE_A_REGION_MUST_CONTAIN_LOCAL_THROUGHPUT_MEASUREMENT_IN_DATABASE_SPEC",
"ACTIVE_ACTIVE_CREATE_A_REGION_MUST_BE_DEFINED_ONCE_PER_DATABASE",
"ACTIVE_ACTIVE_CREATE_A_REGION_DATABASE_RESP_VERSION_IS_NOT_SUPPORTED",
"TOO_MANY_LOCAL_THROUGHPUT_MEASUREMENTS_DEFINED_FOR_SPECIFIED_ACTIVE_ACTIVE_SUBSCRIPTION",
"ACTIVE_ACTIVE_RAM_AND_FLASH_MEMORY_STORAGE_NOT_SUPPORTED",
"ACTIVE_ACTIVE_DATABASE_MODULE_IS_NOT_SUPPORTED",
"ACTIVE_ACTIVE_DATABASE_MODULES_IS_NOT_SUPPORTED",
"ACTIVE_ACTIVE_FOR_GCP_ACCOUNT_IS_NOT_SUPPORTED",
"ACTIVE_ACTIVE_DATABASE_ALERT_NOT_SUPPORTED",
"FLEXIBLE_DATABASE_ALERT_NOT_SUPPORTED",
"ACTIVE_ACTIVE_DATABASE_REPLICA_OF_NOT_SUPPORTED",
"ACTIVE_ACTIVE_DATABASE_PERIODIC_BACK_UP_PATH_NOT_ALLOWED",
"ACTIVE_ACTIVE_CHANGE_REQUEST_PLANNING_FAILED",
"ACTIVE_ACTIVE_CHANGE_REQUEST_PLANNING_EXPIRED",
"ACTIVE_ACTIVE_MISSING_LOCAL_THROUGHPUT_MEASUREMENT",
"ACTIVE_ACTIVE_BACKUP_MISSING_REGION_NAME",
"ACTIVE_ACTIVE_BACKUP_STATUS_MISSING_REGION_NAME",
"ACTIVE_ACTIVE_DATABASE_INVALID_CIDR_FORMAT",
"ACTIVE_ACTIVE_DATABASE_INVALID_CIDR_OVERLAPPING_OTHER_REGIONS",
"ACTIVE_ACTIVE_DATABASE_REPLICATION_CANNOT_BE_FALSE",
"ACTIVE_ACTIVE_REGIONS_MUST_BE_DEFINED_ONCE",
"ACTIVE_ACTIVE_SUBSCRIPTION_WITHOUT_REGIONS_IS_NOT_ALLOWED",
"ACTIVE_ACTIVE_DATABASE_MEMCACHED_PROTOCOL_IS_NOT_ALLOWED",
"ACTIVE_ACTIVE_DATABASE_SHARDING_MUST_BE_ENABLED",
"ACTIVE_ACTIVE_DATABASE_MISSING_DATABASE_CONFIGURATION",
"ACTIVE_ACTIVE_DATABASE_INVALID_THROUGHPUT",
"ACTIVE_ACTIVE_MISMATCH_BETWEEN_REQUEST_REGIONS_AND_SUBSCRIPTION_REGIONS",
"ACTIVE_ACTIVE_INVALID_UPDATE_DATABASE_NAME",
"ACTIVE_ACTIVE_INVALID_CREATE_REGION_NAME",
"ACTIVE_ACTIVE_INVALID_DELETE_REGION_NAME",
"ACTIVE_ACTIVE_INVALID_BACKUP_REGION_NAME",
"ACTIVE_ACTIVE_INVALID_BACKUP_STATUS_REGION_NAME",
"ACTIVE_ACTIVE_DELETE_REGIONS_MUST_BE_DEFINED_ONCE",
"ACTIVE_ACTIVE_DELETE_SUBSCRIPTION_MUST_BE_DEPLOYED_IN_AT_LEAST_ONE_REGION",
"ACTIVE_ACTIVE_REQUEST_GENERAL_ERROR",
"ACTIVE_ACTIVE_VPC_PEERING_INVALID_SOURCE_REGION_NAME",
"ACTIVE_ACTIVE_VPC_PEERING_INVALID_AWS_ACCOUNT",
"ACTIVE_ACTIVE_DATABASE_RESP_VERSION_IS_NOT_SUPPORTED",
"ACTIVE_ACTIVE_DATABASE_PREVIEW_REDIS_VERSION_IS_NOT_SUPPORTED",
"ACTIVE_ACTIVE_DATABASE_UPGRADE_IS_NOT_SUPPORTED",
"LOCAL_THROUGHPUT_MEASUREMENT_NOT_ALLOWED_WITH_SINGLE_REGION_SUBSCRIPTION",
"BACKUP_REGION_NAME_IS_NOT_ALLOWED_WITH_SINGLE_REGION_SUBSCRIPTION",
"BACKUP_STATUS_REGION_NAME_IS_NOT_ALLOWED_WITH_SINGLE_REGION_SUBSCRIPTION",
"UPDATING_LOCAL_PROPERTIES_NOT_ALLOWED_WITH_SINGLE_REGION_SUBSCRIPTION",
"DISABLING_THE_DEFAULT_USER_AND_UPDATING_A_NEW_PASSWORD_IS_NOT_ALLOWED",
"NOT_ALLOWED_TO_UPDATE_A_DATABASE_PASSWORD_WHEN_DEFAULT_USER_IS_DISABLED",
"UPDATING_SINGLE_REGION_DATABASE_NOT_ALLOWED_WITH_ACTIVE_ACTIVE_SUBSCRIPTION",
"GETTING_ACTIVE_ACTIVE_SUBSCRIPTION_VPC_PEERINGS_IS_NOT_ALLOWED_WITH_SINGLE_REGION_SUBSCRIPTION",
"UPDATING_SINGLE_REGION_CIDR_WHITE_LIST_IS_NOT_ALLOWED_WITH_ACTIVE_ACTIVE_SUBSCRIPTION",
"GETTING_SINGLE_REGION_CIDR_WHITE_LIST_IS_NOT_ALLOWED_WITH_ACTIVE_ACTIVE_SUBSCRIPTION",
"ADDING_REGION_IS_NOT_ALLOWED_WITH_SINGLE_REGION_SUBSCRIPTION",
"DELETING_REGION_IS_NOT_ALLOWED_WITH_SINGLE_REGION_SUBSCRIPTION",
"SINGLE_REGION_SUBSCRIPTION_MUST_DEFINE_ONLY_ONE_REGION",
"CREATING_A_SINGLE_REGION_VPC_PEERING_IS_NOT_ALLOWED_WITH_ACTIVE_ACTIVE_SUBSCRIPTION",
"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",
"ACTIVE_ACTIVE_REGION_LIMIT_REACHED",
"FIXED_DATABASE_NAME_IS_MISSING",
"CREATING_FIXED_DATABASE_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"UPDATING_FIXED_DATABASE_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"DELETING_FIXED_DATABASE_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"FIXED_DATABASE_MEMORY_LIMIT_IN_GB_AND_DATA_SET_SIZE_SUPPORTED_ONLY_FOR_PAY_AS_YOU_GO",
"FIXED_DATABASE_FIXED_SUBSCRIPTION_REACHED_MAX_DATABASES_COUNT",
"FIXED_DATABASE_SOURCE_IPS_LIST_IS_GREATER_THAN_PLAN_MAX_COUNT_ALLOWED_SOURCE_IPS",
"FIXED_DATABASE_ENABLE_DATABASE_CLUSTERING_SUPPORTED_ONLY_FOR_PAY_AS_YOU_GO",
"FIXED_DATABASE_ENABLE_DATABASE_CLUSTERING_WITH_REDIS_SEARCH_OR_GRAPH_MODULES_IS_NOT_ALLOWED",
"FIXED_DATABASE_PAYG_MEMORY_LIMIT_IN_GB_IS_MISSING",
"FIXED_DATABASE_PAYG_MEMORY_LIMIT_IN_GB_OR_DATA_SET_SIZE_IN_GB_IS_MISSING",
"FIXED_DATABASE_ALERT_NOT_SUPPORTED",
"PAY_AS_YOU_GO_DATABASE_ALERT_NOT_SUPPORTED",
"FIXED_DATABASE_REPLICA_OF_MEMCACHED_IS_NOT_SUPPORTED",
"FIXED_DATABASE_STACK_PROTOCOL_CONTAINS_MODULES",
"FIXED_DATABASE_STACK_PROTOCOL_IS_NOT_SUPPORTED_IN_SELECTED_PLAN_OR_CLUSTER",
"FIXED_DATABASE_REDIS_PROTOCOL_IS_NOT_SUPPORTED_IN_SELECTED_PLAN",
"FIXED_DATABASE_REPLICATION_IS_NOT_SUPPORTED_IN_REQUESTED_PLAN",
"FIXED_DATABASE_OSS_CLUSTER_API_IS_NOT_SUPPORTED_IN_REQUESTED_PLAN",
"FIXED_DATABASE_USE_EXTERNAL_ENDPOINT_FOR_OSS_CLUSTER_API_NOT_SUPPORTED_IN_REQUESTED_PLAN",
"FIXED_DATABASE_REGEX_RULES_NOT_SUPPORTED_IN_REQUESTED_PLAN",
"FIXED_DATABASE_ENABLE_TLS_NOT_SUPPORTED_IN_REQUESTED_PLAN",
"FIXED_DATABASE_CLIENT_SSL_CERTIFICATE_NOT_SUPPORTED_IN_REQUESTED_PLAN",
"FIXED_DATABASE_REPLICA_OF_NOT_SUPPORTED_IN_REQUESTED_PLAN",
"FIXED_DATABASE_CLUSTER_DOES_NOT_SUPPORT_DATA_PERSISTENCE",
"FIXED_DATABASE_NO_EVICTION_IS_NOT_SUPPORTED_BY_CLUSTER",
"FIXED_DATABASE_DATA_EVICTION_POLICY_IS_NOT_SUPPORTED_BY_CLUSTER",
"FIXED_DATABASE_DATA_EVICTION_POLICY_IS_NOT_SUPPORTED_BY_SELECTED_MODULES",
"FIXED_DATABASE_EVICTION_POLICY_NOT_COMPATIBLE_WITH_REDIS_VERSION",
"DATABASE_EVICTION_POLICY_NOT_COMPATIBLE_WITH_REDIS_VERSION",
"DATABASE_EVICTION_POLICY_NOT_COMPATIBLE_WITH_REDIS_FLEX",
"FIXED_DATABASE_EVICTION_POLICY_NOT_COMPATIBLE_WITH_REDIS_FLEX",
"FIXED_DATABASE_REPLICA_OF_IS_NOT_SUPPORTED_BY_SELECTED_MODULES",
"FIXED_DATABASE_DATA_PERSISTENCE_VALUE_NOT_SUPPORTED_FOR_FIXED",
"FIXED_DATABASE_DATA_EVICTION_POLICY_IS_NOT_SUPPORTED_BY_ALL_MODULES_IN_SELECTED_PLAN_OR_CLUSTER",
"FIXED_DATABASE_RESP_VERSION_IS_NOT_SUPPORTED",
"FIXED_DATABASE_REDIS_FLEX_IS_NOT_SUPPORTED",
"FIXED_DATABASE_STACK_PROTOCOL_IS_NOT_SUPPORTED_FOR_REDIS_FLEX",
"FIXED_DATABASE_MEMCACHED_PROTOCOL_IS_NOT_SUPPORTED_FOR_REDIS_FLEX",
"FIXED_DATABASE_NUMBER_OF_SHARDS_IS_NOT_SUPPORTED_FOR_THIS_ACCOUNT",
"FIXED_DATABASE_NUMBER_OF_SHARDS_REQUIRES_DATABASE_CLUSTERING_ENABLED",
"FIXED_DATABASE_NUMBER_OF_SHARDS_INVALID_VALUE",
"PAYMENT_INFO_NOT_ALLOWED_WHEN_ACCOUNT_POC_ACTIVE",
"FIXED_DATABASE_NUMBER_OF_SHARDS_SUPPORTED_ONLY_FOR_PAY_AS_YOU_GO",
"FIXED_DATABASE_NUMBER_OF_SHARDS_NOT_A_MULTIPLE_OF_CURRENT_VALUE",
"VPC_ID_NOT_ALLOWED_WITH_INTERNAL_CLOUD_ACCOUNT",
"SUBNET_ID_NOT_ALLOWED_WITH_INTERNAL_CLOUD_ACCOUNT",
"SECURITY_GROUP_ID_NOT_ALLOWED_WITH_INTERNAL_CLOUD_ACCOUNT",
"CLIENT_SSL_CERTIFICATE_IS_NOT_ALLOWED_WITHOUT_ENABLE_TLS_IS_TRUE",
"MARKETPLACE_PAYMENT_INFO_COLLISION",
"ACCOUNT_MARKETPLACE_IS_NOT_ACTIVE",
"ACCOUNT_MARKETPLACE_NOT_FOUND",
"ACCOUNT_MARKETPLACE_NOT_SUPPORT_NON_HOSTED_ACCOUNTS",
"PAYMENT_INVALID_CARD_NUMBER",
"PAYMENT_INVALID_CCV",
"PAYMENT_INVALID_CARD_TYPE",
"PAYMENT_CVV_MISSING",
"PAYMENT_GENERAL_ERROR",
"PAYMENT_HOLD_FAILED",
"ACL_USER_NAME_ALREADY_EXISTS",
"ACL_USER_NAME_NOT_VALID",
"ACL_USER_NOT_FOUND",
"ACL_USER_NAME_IS_MISSING",
"ACL_ROLE_NAME_IS_MISSING",
"ACL_ROLE_REDIS_RULE_MUST_BE_DEFINED_ONLY_ONCE_PER_DATABASE",
"ACL_ROLE_REDIS_RULE_ALREADY_EXISTS_FOR_REQUESTED_RESOURCE",
"ACL_ROLE_REDIS_RULES_IS_MISSING",
"ACL_ROLE_REDIS_RULES_DATABASES_SPEC_IS_MISSING",
"ACL_ROLE_REDIS_RULES_DATABASES_DATABASE_ID_IS_MISSING",
"ACL_ROLE_REDIS_RULES_DATABASES_SUBSCRIPTION_ID_IS_MISSING",
"ACL_ROLE_REDIS_RULES_DATABASES_REGIONS_IS_MISSING",
"ACL_ROLE_REDIS_RULES_DATABASES_REGION_MUST_BE_CRDB",
"ACL_ROLE_REDIS_RULES_DATABASES_REGION_NOT_IN_PLAN",
"ACL_ROLE_REDIS_RULES_DATABASES_REGION_NOT_UNIQUE",
"ACL_ROLE_REDIS_RULES_DATABASES_REGION_IS_NOT_BELONGS_TO_DATABASE",
"ACL_ROLE_NAME_NOT_VALID",
"ACL_ROLE_DOES_NOT_EXISTS",
"ACL_USER_PASSWORD_NOT_VALID",
"ACL_USER_PASSWORD_IS_MISSING",
"ACL_USER_CREATION_FAILURE",
"ACL_REDIS_RULE_NAME_IS_MISSING",
"ACL_REDIS_RULE_NAME_ALREADY_EXISTS",
"ACL_REDIS_RULE_NAME_NOT_VALID",
"ACL_REDIS_RULE_NAME_NOT_IN_RANGE",
"ACL_REDIS_RULE_PATTERN_IS_MISSING",
"ACL_REDIS_RULE_PATTERN_NOT_VALID",
"ACL_REDIS_RULE_INVALID_PUBSUB_PATTERN",
"ACL_REDIS_RULE_ACCOUNT_NOT_SUPPORT_PUBSUB_PATTERN",
"ACL_REDIS_RULE_ALLCHANNELS_BEFORE_SPECIFIC_CHANNEL",
"ACL_REDIS_RULE_INVALID_CATEGORY_RULE_PATTERN",
"ACL_REDIS_RULE_INVALID_KEYSPACE_RULE_PATTERN",
"ACL_REDIS_RULE_INVALID_COMMAND_OR_MODULE_COMMAND_RULE_PATTERN",
"ACL_REDIS_RULE_ALLKEYS_BEFORE_SPECIFIC_KEY",
"ACL_REDIS_RULE_CREATION_FAILURE",
"ACL_REDIS_RULE_NOT_FOUND",
"ACL_REDIS_RULE_CANNOT_UPDATE_DEFAULT",
"ACL_REDIS_RULE_CANNOT_DELETE_DEFAULT",
"ACL_REDIS_RULE_CANNOT_DELETE_WHEN_ASSOCIATED_WITH_ROLES",
"ACL_REDIS_RULE_NOT_ACTIVE",
"ACL_GENERAL_ERROR",
"ACL_ROLE_NAME_ALREADY_EXISTS",
"ACL_ROLE_HAS_ACTIVE_USERS_AND_CANNOT_BE_DELETED",
"ACL_ROLE_IS_IN_PENDING_STATUS_AND_CANNOT_BE_DELETED",
"ACL_ROLE_IS_IN_PENDING_STATUS_AND_CANNOT_BE_UPDATED",
"ACL_ROLE_NOT_FOUND",
"ACL_ROLE_ID_IS_MISSING",
"ACL_REDIS_RULE_DOES_NOT_EXISTS",
"ACL_REDIS_RULE_INVALID_KEY_PERMISSION_PATTERN",
"ACL_REDIS_RULE_INVALID_SELECTORS_PATTERN",
"BDB_IS_NOT_IN_CORRECT_VERSION_FOR_GIVEN_ACL_VERSION",
"USER_NOT_FOUND",
"USER_INSUFFICIENT_ROLE",
"USER_NAME_IS_INVALID",
"USER_CANNOT_UPDATE_IT_IS_OWN_ROLE",
"USER_WITHOUT_OWNER_PERMISSION_CANNOT_UPDATE_USERS",
"USER_WITHOUT_OWNER_PERMISSION_CANNOT_PERFORM_ACTIONS_ON_USERS",
"USER_CANNOT_BE_UPDATED_OR_DELETED_BEFORE_VERIFICATION",
"USER_ROLE_DOES_NOT_EXISTS",
"USER_ROLE_IS_MISSING",
"USER_CANNOT_DELETE_OWN_USER",
"ENTITY_NOT_FOUND",
"FIXED_SUBSCRIPTION_CREATE_PLAN_NOT_FOUND",
"FIXED_SUBSCRIPTION_UPDATE_INVALID_PLAN",
"FIXED_SUBSCRIPTION_PLAN_NOT_PROVIDED",
"FIXED_SUBSCRIPTION_ACCOUNT_ALREADY_HAS_A_FREE_PLAN",
"FIXED_MISMATCH_BETWEEN_REQUEST_PLAN_CLOUD_PROVIDER_AND_SUBSCRIPTION_CLOUD_PROVIDER",
"FIXED_MISMATCH_BETWEEN_REQUEST_PLAN_REGION_AND_SUBSCRIPTION_REGION",
"FIXED_SUBSCRIPTION_PLAN_MAX_DATABASES_SMALLER_THEN_CURRENT_SUBSCRIPTION_DATABASES_COUNT",
"FIXED_SUBSCRIPTION_PLAN_SIZE_SMALLER_THEN_CURRENT_SUBSCRIPTION_USAGE",
"FIXED_SUBSCRIPTION_PLAN_NOT_SUPPORT_REPLICA_OF",
"FIXED_SUBSCRIPTION_PLAN_DATABASES_ARE_RESTRICTED_TO_A_SINGLE_CLUSTER",
"FIXED_SUBSCRIPTION_PLAN_NOT_SUPPORT_TLS",
"FIXED_SUBSCRIPTION_PLAN_CANNOT_CHANGED_FROM_AVAILABILITY_OF_SINGLE_ZONE_OR_NO_REPLICATION_TO_MULTI_ZONE",
"FIXED_SUBSCRIPTION_PLAN_CANNOT_CHANGED_FROM_AVAILABILITY_OF_MULTI_ZONE_TO_SINGLE_ZONE_OR_NO_REPLICATION",
"FIXED_SUBSCRIPTION_PLAN_MAX_SOURCE_IPS_IS_SMALLER_THEN_ONE_OF_EXISTING_DATABSE_SOURCE_IPS",
"FIXED_SUBSCRIPTION_INVALID_NAME",
"FIXED_SUBSCRIPTION_NAME_NOT_PROVIDED",
"REDIS_FLEX_PLAN_CANNOT_BE_UPDATED_TO_NON_REDIS_FLEX",
"NON_REDIS_FLEX_PLAN_CANNOT_BE_UPDATED_TO_REDIS_FLEX_PLAN",
"DELETING_A_FIXED_SUBSCRIPTION_IS_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"UPDATING_A_FIXED_SUBSCRIPTION_IS_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"UPDATING_A_FIXED_SUBSCRIPTION_PLAN_IS_NOT_ALLOWED_WHILE_THE_SUBSCRIPTION_OR_BDB_IS_PENDING",
"FIXED_PAYMENT_INFO_NOT_ALLOWED_IN_FREE_FIXED_PLAN",
"FREE_PLAN_IS_ALLOWED_ONLY_FOR_ACCOUNTS_WITH_VALID_PAYMENT_INFO",
"BACKUP_A_FIXED_DATABASE_IS_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"IMPORT_A_FIXED_DATABASE_IS_NOT_ALLOWED_WITH_A_FLEXIBLE_SUBSCRIPTION",
"TOO_MANY_PENDING_SUBSCRIPTIONS",
"BAD_REQUEST",
"GENERAL_ERROR",
"CONFLICT_ERROR",
"UNKNOWN_STATUS",
"CRDB_FLUSH_FAILURE",
"CRDB_FLUSH_ACTION_NOT_ALLOWED_WITH_SINGLE_REGION_SUBSCRIPTION",
"DATABASE_NAME_CHANGE_NOT_SUPPORTED",
"DATABASE_INVALID_LOCATION_BACKUP",
"DATABASE_GENERAL_ERROR_BACKUP",
"CLUSTER_COMMUNICATION_ERROR",
"MAINTENANCE_WINDOW_INVALID_MAINTENANCE_WINDOW_SPEC_PROVIDED",
"MAINTENANCE_WINDOW_INVALID_MAINTENANCE_WINDOW_MODE_PROVIDED",
"MAINTENANCE_WINDOW_MANUAL_MODE_WITH_NO_MAINTENANCE_WINDOWS",
"MAINTENANCE_WINDOW_AUTOMATIC_MODE_WITH_MAINTENANCE_WINDOWS",
"MAINTENANCE_WINDOW_GREATER_THAN_MAXIMUM_ALLOWABLE_MAINTENANCE_WINDOWS_PROVIDED",
"MAINTENANCE_WINDOW_INVALID_START_HOUR",
"MAINTENANCE_WINDOW_INVALID_DURATION_IN_HOURS",
"MAINTENANCE_WINDOW_INVALID_DAYS",
"MAINTENANCE_WINDOW_DUPLICATE_DAYS",
"MAINTENANCE_WINDOW_INVALID_DURATION_FOR_ROF_SUBSCRIPTION",
"MAINTENANCE_WINDOW_UNKNOWN_MEMORY_STORAGE_TYPE",
"DATABASE_UPGRADE_IS_ALREADY_RUNNING",
"DATABASE_CLUSTER_IS_IN_MAINTENANCE",
"DATABASE_IS_NOT_ACTIVE",
"DATABASE_UPGRADE_WORKFLOW_NOT_FOUND",
"DATABASE_UPGRADE_INVALID_REDIS_VERSION",
"DATABASE_UPGRADE_OF_MEMCACHED_IS_NOT_SUPPORTED",
"DATABASE_REPLICA_OF_INCOMPATIBLE_VERSION",
"DATABASE_UPGRADE_FAILED",
"DATABASE_INVALID_PLAN_TYPE",
"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",
"DEDICATED_SUBSCRIPTION_PREFERRED_AZ_INVALID_VALUE",
"DEDICATED_SUBSCRIPTION_INVALID_INSTANCE_NAME",
"DEDICATED_SUBSCRIPTION_INVALID_REPLICATION",
"PRIVATE_LINK_NOT_FOUND",
"PRIVATE_LINK_ALREADY_EXISTS",
"PRIVATE_LINK_PRINCIPAL_ALREADY_EXISTS",
"PRIVATE_LINK_PRINCIPAL_NOT_FOUND",
"PRIVATE_LINK_PRINCIPAL_INVALID_PRINCIPLE",
"PRIVATE_LINK_CLOUD_PROVIDER_NOT_SUPPORTED",
"PRIVATE_LINK_GET_A_FLEXIBLE_SUBSCRIPTION_PRIVATE_LINK_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION",
"PRIVATE_LINK_GET_AN_ACTIVE_ACTIVE_SUBSCRIPTION_PRIVATE_LINK_IS_NOT_ALLOWED_WITH_A_SINGLE_REGION_SUBSCRIPTION",
"PRIVATE_LINK_CREATING_PRINCIPLES_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION",
"PRIVATE_LINK_CREATING_PRINCIPLES_IS_NOT_ALLOWED_WITH_A_SINGLE_REGION_SUBSCRIPTION",
"PRIVATE_LINK_DELETING_A_FLEXIBLE_SUBSCRIPTION_PRINCIPALS_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION",
"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_SUBSCRIPTION_REACHED_MAX_DATABASES_COUNT",
"PRIVATE_LINK_ALL_PRINCIPALS_MUST_BE_DELETED_BEFORE_DELETING_RESOURCE_LINK",
"PRIVATE_LINK_DISASSOCIATE_CONNECTIONS_A_FLEXIBLE_SUBSCRIPTION_PRIVATE_LINK_IS_NOT_ALLOWED_WITH_AN_ACTIVE_ACTIVE_SUBSCRIPTION",
"PRIVATE_LINK_DISASSOCIATE_CONNECTIONS_AN_ACTIVE_ACTIVE_SUBSCRIPTION_PRIVATE_LINK_IS_NOT_ALLOWED_WITH_A_SINGLE_REGION_SUBSCRIPTION",
"COST_REPORT_IS_NOT_SUPPORTED",
"COST_REPORT_START_DATE_IS_MISSING",
"COST_REPORT_END_DATE_IS_MISSING",
"COST_REPORT_INVALID_DATE_FORMAT",
"COST_REPORT_END_DATE_BEFORE_START_DATE",
"COST_REPORT_DATE_RANGE_EXCEEDS_LIMIT",
"COST_REPORT_TAG_KEY_EMPTY",
"COST_REPORT_TAG_VALUE_EMPTY",
"COST_REPORT_FUTURE_DATES_NOT_ALLOWED"
]
},
"additionalInfo": {
"type": "string"
}
}
},
"CloudTags": {
"type": "object",
"properties": {
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"accountId": {
"type": "integer",
"format": "int32"
}
},
"description": "Redis list of database tags",
"example": {
"accountId": 40131,
"tags": [
{
"key": "environment",
"value": "production",
"createdAt": "2024-05-21T20:02:21+02:00",
"updatedAt": "2024-06-21T20:02:21+02:00",
"links": []
},
{
"key": "owner",
"value": "Clifford O'neill",
"createdAt": "2024-05-21T20:02:21+02:00",
"updatedAt": "2024-06-21T20:02:21+02:00",
"links": []
}
],
"links": [
{
"rel": "self",
"href": "http://localhost:8081/v1/fixed/subscriptions/178867/databases/51412930/tags",
"type": "GET"
}
]
}
},
"RedisVersion": {
"type": "object",
"properties": {
"version": {
"type": "string"
},
"eolDate": {
"type": "string",
"format": "date"
},
"isPreview": {
"type": "boolean"
},
"isDefault": {
"type": "boolean"
}
}
},
"AclRoleCreateRequest": {
"required": [
"name",
"redisRules"
],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Database access role name.",
"example": "ACL-role-example"
},
"redisRules": {
"type": "array",
"description": "A list of Redis ACL rules to assign to this database access role.",
"items": {
"$ref": "#/components/schemas/AclRoleRedisRuleSpec"
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "ACL role create request"
},
"DatabaseBackupRequest": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"databaseId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"regionName": {
"type": "string",
"description": "Required for Active-Active databases. Name of the cloud provider region to back up. When backing up an Active-Active database, you must back up each region separately."
},
"adhocBackupPath": {
"type": "string",
"description": "Optional. Manually backs up data to this location, instead of the set 'remoteBackup' location.",
"example": "s3://<backup-path>"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Database backup request message"
},
"ReplicaAsSourceEndpoints": {
"type": "object",
"properties": {
"public": {
"type": "string",
"description": "Public cluster endpoint that can be used as source for replication"
},
"private": {
"type": "string",
"description": "Private cluster endpoint that can be used as source for replication"
}
},
"description": "Endpoints to use when configuring another database to replicate from this database (Make sure to use this instead of the dynamic endpoints)."
},
"DataPersistenceOptions": {
"type": "object",
"properties": {
"dataPersistence": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DataPersistenceEntry"
}
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"example": {
"dataPersistence": [
{
"name": "none",
"description": "None"
},
{
"name": "aof-every-1-second",
"description": "Append only file (AOF) - fsync every 1 second"
},
{
"name": "aof-every-write",
"description": "Append only file (AOF) - fsync every write"
},
{
"name": "snapshot-every-1-hour",
"description": "Snapshot every 1 hour"
},
{
"name": "snapshot-every-6-hours",
"description": "Snapshot every 6 hour"
},
{
"name": "snapshot-every-12-hours",
"description": "Snapshot every 12 hour"
}
],
"links": [
{
"rel": "self",
"href": "https://api-cloudapi.qa.redislabs.com/v1/data-persistence",
"type": "GET"
}
]
}
},
"DatabaseTagCreateRequest": {
"required": [
"key",
"value"
],
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "Database tag key.",
"example": "environment"
},
"value": {
"type": "string",
"description": "Database tag value.",
"example": "production"
},
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"databaseId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Database tag"
},
"DatabaseBackupConfig": {
"type": "object",
"properties": {
"active": {
"type": "boolean",
"description": "Optional. Determine if backup should be active. Default: null"
},
"interval": {
"type": "string",
"description": "Required when active is 'true'. Defines the interval between backups. Format: 'every-x-hours', where x is one of 24, 12, 6, 4, 2, or 1. Example: \"every-4-hours\""
},
"backupInterval": {
"type": "string",
"readOnly": true,
"enum": [
"EVERY_24_HOURS",
"EVERY_12_HOURS",
"EVERY_6_HOURS",
"EVERY_4_HOURS",
"EVERY_2_HOURS",
"EVERY_1_HOURS"
]
},
"timeUTC": {
"type": "string",
"description": "Optional. Hour when the backup starts. Available only for \"every-12-hours\" and \"every-24-hours\" backup intervals. Specified as an hour in 24-hour UTC time. Example: \"14:00\" is 2 PM UTC."
},
"databaseBackupTimeUTC": {
"type": "string",
"readOnly": true,
"enum": [
"HOUR_ONE",
"HOUR_TWO",
"HOUR_THREE",
"HOUR_FOUR",
"HOUR_FIVE",
"HOUR_SIX",
"HOUR_SEVEN",
"HOUR_EIGHT",
"HOUR_NINE",
"HOUR_TEN",
"HOUR_ELEVEN",
"HOUR_TWELVE"
]
},
"storageType": {
"type": "string",
"description": "Required when active is 'true'. Type of storage to host backup files. Can be \"aws-s3\", \"google-blob-storage\", \"azure-blob-storage\", or \"ftp\". See [Set up backup storage locations](https://redis.io/docs/latest/operate/rc/databases/back-up-data/#set-up-backup-storage-locations) to learn how to set up backup storage locations."
},
"backupStorageType": {
"type": "string",
"readOnly": true,
"enum": [
"http",
"redis",
"ftp",
"aws-s3",
"azure-blob-storage",
"google-blob-storage"
]
},
"storagePath": {
"type": "string",
"description": "Required when active is 'true'. Path to the backup storage location."
}
},
"description": "Optional. Changes Remote backup configuration details."
},
"DynamicEndpoints": {
"type": "object",
"properties": {
"public": {
"type": "string"
},
"private": {
"type": "string"
}
}
},
"CrdbFlushRequest": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"databaseId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Active-Active database flush request message"
},
"MaintenanceWindowSpec": {
"required": [
"days",
"durationInHours",
"startHour"
],
"type": "object",
"properties": {
"startHour": {
"type": "integer",
"description": "Starting hour of the maintenance window. Can be between '0' (12 AM in the deployment region's local time) and '23' (11 PM in the deployment region's local time).",
"format": "int32",
"example": 12
},
"durationInHours": {
"type": "integer",
"description": "The duration of the maintenance window in hours. Can be between 4-24 hours (or 8-24 hours if using 'ram-and-flash').",
"format": "int32",
"example": 8
},
"days": {
"type": "array",
"description": "Days where this maintenance window applies. Can contain one or more of: \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\", or \"Sunday\".",
"example": [
"Monday",
"Wednesday"
],
"items": {
"type": "string",
"description": "Days where this maintenance window applies. Can contain one or more of: \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\", or \"Sunday\".",
"example": "[\"Monday\",\"Wednesday\"]"
}
}
},
"description": "Maintenance window timeframes if mode is set to 'manual'. Up to 7 maintenance windows can be provided."
},
"ActiveActiveVpcPeeringCreateGcpRequest": {
"required": [
"sourceRegion",
"vpcNetworkName",
"vpcProjectUid"
],
"type": "object",
"properties": {
"provider": {
"type": "string"
},
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"sourceRegion": {
"type": "string",
"description": "Name of region to create a VPC peering from."
},
"vpcProjectUid": {
"type": "string",
"description": "VPC project ID.",
"example": "<vpc-identifer>"
},
"vpcNetworkName": {
"type": "string",
"description": "VPC network name.",
"example": "<name>"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "VPC peering creation request message"
},
"SubscriptionCreateRequest": {
"required": [
"cloudProviders",
"databases"
],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Optional. New subscription name.",
"example": "My new subscription"
},
"dryRun": {
"type": "boolean",
"description": "Optional. When 'false': Creates a deployment plan and deploys it, creating any resources required by the plan. When 'true': creates a read-only deployment plan and does not create any resources. Default: 'false'",
"example": false
},
"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"
]
},
"paymentMethod": {
"type": "string",
"description": "Optional. The payment method for the subscription. If set to \u2018credit-card\u2019, \u2018paymentMethodId\u2019 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 \u2018paymentMethod\u2019 is \u2018marketplace\u2019, but required for all other account types.",
"format": "int32"
},
"memoryStorage": {
"type": "string",
"description": "Optional. Memory storage preference: either 'ram' or a combination of 'ram-and-flash' (also known as Auto Tiering). Default: 'ram'",
"example": "ram",
"enum": [
"ram",
"ram-and-flash"
]
},
"persistentStorageEncryptionType": {
"type": "string",
"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",
"customer-managed-key"
]
},
"persistentStorageEncryptionKeys": {
"$ref": "#/components/schemas/CustomerManagedKeyProperties"
},
"cloudProviders": {
"type": "array",
"description": "Cloud provider, region, and networking details.",
"items": {
"$ref": "#/components/schemas/SubscriptionSpec"
}
},
"databases": {
"type": "array",
"description": "One or more database specification(s) to create in this subscription.",
"items": {
"$ref": "#/components/schemas/SubscriptionDatabaseSpec"
}
},
"redisVersion": {
"type": "string",
"description": "Optional. Defines the Redis version of the databases created in this specific request. It doesn't determine future databases associated with this subscription. If not set, databases will use the default Redis version. This field is deprecated and will be removed in a future API version - use the database-level redisVersion property instead.",
"example": "7.2",
"deprecated": true
},
"publicEndpointAccess": {
"type": "boolean",
"description": "Optional. When 'false', all databases on this subscription will reject any connection attempt to the public endpoint and any connection attempt to the private endpoint that does not come from an IP address in the private address space defined in [RFC 1918](https://datatracker.ietf.org/doc/html/rfc1918#section-3 ). You must use a [private connectivity method](https://redis.io/docs/latest/operate/rc/security/database-security/block-public-endpoints/#private-connectivity-methods ) to connect to a database with a blocked public endpoint. Default: 'true'."
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Subscription create request"
},
"RedisVersions": {
"type": "object",
"properties": {
"redisVersions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/RedisVersion"
}
}
}
},
"CloudAccountUpdateRequest": {
"required": [
"accessKeyId",
"accessSecretKey",
"consolePassword",
"consoleUsername"
],
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "name",
"example": "My new Cloud Account"
},
"cloudAccountId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"accessKeyId": {
"type": "string",
"description": "Cloud provider access key.",
"example": "****"
},
"accessSecretKey": {
"type": "string",
"description": "Cloud provider secret key.",
"example": "****"
},
"consoleUsername": {
"type": "string",
"description": "Cloud provider management console username.",
"example": "me@mycompany.com"
},
"consolePassword": {
"type": "string",
"description": "Cloud provider management console password.",
"example": "****"
},
"signInLoginUrl": {
"type": "string",
"description": "Optional. Cloud provider management console login URL.",
"example": "https://<aws-account-identifier>.signin.aws.amazon.com/console"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Cloud Account definition"
},
"PrivateLinkCreateRequest": {
"required": [
"principal",
"shareName",
"type"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"shareName": {
"maxLength": 64,
"minLength": 0,
"type": "string",
"description": "Name of the resource share",
"example": "my-redis-share"
},
"principal": {
"type": "string",
"description": "AWS account ID or ARN of the principal (IAM user, role, or account)",
"example": "123456789012"
},
"type": {
"type": "string",
"description": "Type of the principal",
"example": "aws_account",
"enum": [
"aws_account",
"organization",
"organization_unit",
"iam_role",
"iam_user",
"service_principal"
]
},
"alias": {
"type": "string",
"description": "Alias or friendly name for the principal",
"example": "Production Account"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Private Link create request"
},
"SubscriptionPricings": {
"type": "object",
"properties": {
"pricing": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SubscriptionPricing"
}
}
}
},
"SubscriptionPricing": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"typeDetails": {
"type": "string"
},
"quantity": {
"type": "integer",
"format": "int32"
},
"quantityMeasurement": {
"type": "string"
},
"pricePerUnit": {
"type": "number",
"format": "double"
},
"priceCurrency": {
"type": "string"
},
"pricePeriod": {
"type": "string"
},
"region": {
"type": "string"
}
}
},
"ReplicaOfSpec": {
"required": [
"syncSources"
],
"type": "object",
"properties": {
"syncSources": {
"type": "array",
"description": "Optional. This database will be a replica of the specified Redis databases, provided as a list of objects with endpoint and certificate details.",
"items": {
"$ref": "#/components/schemas/DatabaseSyncSourceSpec"
}
}
},
"description": "Optional. Changes Replica Of (also known as Active-Passive) configuration details."
},
"PrivateLinkActiveActivePrincipalsDeleteRequest": {
"required": [
"principal",
"regionId"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"regionId": {
"type": "integer",
"description": "Deployment region id as defined by cloud provider",
"format": "int32",
"readOnly": true
},
"principal": {
"type": "string",
"description": "An AWS account ID or ARN to remove from the private link",
"example": "123456789012"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Request to remove principals from private link for Active-Active subscription"
},
"DatabaseThroughputSpec": {
"required": [
"by",
"value"
],
"type": "object",
"properties": {
"by": {
"type": "string",
"description": "Throughput measurement method. Use 'operations-per-second' for all new databases.",
"enum": [
"operations-per-second",
"number-of-shards"
]
},
"value": {
"type": "integer",
"description": "Throughput value in the selected measurement method.",
"format": "int64",
"example": 10000
}
},
"description": "Optional. Throughput measurement method."
},
"FixedDatabase": {
"type": "object",
"properties": {
"databaseId": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string"
},
"protocol": {
"type": "string",
"enum": [
"redis",
"memcached",
"stack"
]
},
"provider": {
"type": "string"
},
"region": {
"type": "string"
},
"redisVersion": {
"type": "string"
},
"redisVersionCompliance": {
"type": "string",
"deprecated": true
},
"respVersion": {
"type": "string",
"enum": [
"resp2",
"resp3"
]
},
"status": {
"type": "string"
},
"planMemoryLimit": {
"type": "number",
"format": "double"
},
"planDatasetSize": {
"type": "number",
"format": "double"
},
"memoryLimitMeasurementUnit": {
"type": "string"
},
"memoryLimitInGb": {
"type": "number",
"format": "double"
},
"datasetSizeInGb": {
"type": "number",
"format": "double"
},
"memoryUsedInMb": {
"type": "number",
"format": "double"
},
"networkMonthlyUsageInByte": {
"type": "number",
"format": "double"
},
"memoryStorage": {
"type": "string",
"enum": [
"ram",
"ram-and-flash"
]
},
"redisFlex": {
"type": "boolean"
},
"supportOSSClusterApi": {
"type": "boolean"
},
"useExternalEndpointForOSSClusterApi": {
"type": "boolean"
},
"dataPersistence": {
"type": "string",
"enum": [
"none",
"aof-every-1-second",
"aof-every-write",
"snapshot-every-1-hour",
"snapshot-every-6-hours",
"snapshot-every-12-hours"
]
},
"replication": {
"type": "boolean"
},
"dataEvictionPolicy": {
"type": "string",
"enum": [
"allkeys-lru",
"allkeys-lfu",
"allkeys-lrm",
"allkeys-random",
"volatile-lru",
"volatile-lfu",
"volatile-lrm",
"volatile-random",
"volatile-ttl",
"noeviction"
]
},
"activatedOn": {
"type": "string",
"format": "date-time"
},
"lastModified": {
"type": "string",
"format": "date-time"
},
"publicEndpoint": {
"type": "string"
},
"privateEndpoint": {
"type": "string"
},
"dynamicEndpoints": {
"$ref": "#/components/schemas/DynamicEndpoints"
},
"replicaAsSourceEndpoints": {
"$ref": "#/components/schemas/ReplicaAsSourceEndpoints"
},
"links": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"example": {
"databaseId": 51324587,
"name": "bdb",
"protocol": "stack",
"provider": "AWS",
"region": "us-east-1",
"status": "draft",
"planMemoryLimit": 250,
"respVersion": "resp2",
"memoryLimitMeasurementUnit": "MB",
"memoryUsedInMb": 7,
"memoryStorage": "ram",
"dataPersistence": "none",
"replication": true,
"dataEvictionPolicy": "noeviction",
"clustering": {
"enabled": false,
"regexRules": [
{
"ordinal": 0,
"pattern": ".*\\{(?<tag>.*)\\}.*"
},
{
"ordinal": 1,
"pattern": "(?<tag>.*)"
}
],
"hashingPolicy": "standard"
},
"security": {
"defaultUserEnabled": true,
"password": "myCustomPassword",
"sourceIps": [
"0.0.0.0/0"
]
},
"modules": [
{
"id": 18534,
"name": "RediSearch",
"capabilityName": "Search and query",
"version": "2.2.6",
"description": "A comprehensive, expressive, flexible, fast and developer-friendly search and query engine for the diversity of data types in Redis with state-of-the-art scoring algorithms",
"parameters": []
},
{
"id": 18535,
"name": "RedisBloom",
"capabilityName": "Probabilistic",
"version": "2.2.12",
"description": "A set of probabilistic data structures to Redis, including Bloom filter, Cuckoo filter, Count-min sketch, Top-K, and t-digest",
"parameters": []
},
{
"id": 18536,
"name": "RedisJSON",
"capabilityName": "JSON",
"version": "2.0.6",
"description": "Native JSON Data Type for Redis, allowing for atomic reads and writes of sub-elements",
"parameters": []
},
{
"id": 18537,
"name": "RedisTimeSeries",
"capabilityName": "Time series",
"version": "1.6.8",
"description": "Time-Series data structure for Redis",
"parameters": []
}
],
"alerts": [
{
"name": "connections-limit",
"value": 80,
"defaultValue": 80
}
],
"backup": {
"remoteBackupEnabled": false
},
"links": []
}
},
"DatabaseImportRequest": {
"required": [
"importFromUri",
"sourceType"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"databaseId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"sourceType": {
"type": "string",
"description": "Type of storage from which to import the database RDB file or Redis data.",
"example": "http",
"enum": [
"http",
"redis",
"ftp",
"aws-s3",
"azure-blob-storage",
"google-blob-storage"
]
},
"importFromUri": {
"type": "array",
"description": "One or more paths to source data files or Redis databases, as appropriate to specified source type.",
"items": {
"type": "string",
"description": "One or more paths to source data files or Redis databases, as appropriate to specified source type."
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Database import request"
},
"DatabaseUpgradeRedisVersionRequest": {
"required": [
"targetRedisVersion"
],
"type": "object",
"properties": {
"databaseId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"targetRedisVersion": {
"type": "string",
"description": "The target Redis version the database will be upgraded to. Use GET /subscriptions/redis-versions to get a list of available Redis versions.",
"example": "7.4"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Upgrades the specified Pro database to a later Redis version."
},
"CustomerManagedKey": {
"required": [
"resourceName"
],
"type": "object",
"properties": {
"resourceName": {
"type": "string",
"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": "(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."
},
"ActiveActiveRegionCreateRequest": {
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"region": {
"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.",
"example": "10.0.0.0/24"
},
"subnetIds": {
"type": "array",
"description": "Optional. Enter a list of subnets identifiers that exists in the hosted AWS account. Subnet Identifier must exist within the hosting account.",
"example": "['subnet-0125be68a4625884ad', 'subnet-0125be68a4625884ad','subnet-0125be68a4625884ad']",
"items": {
"type": "string",
"description": "Optional. Enter a list of subnets identifiers that exists in the hosted AWS account. Subnet Identifier must exist within the hosting account.",
"example": "['subnet-0125be68a4625884ad', 'subnet-0125be68a4625884ad','subnet-0125be68a4625884ad']"
}
},
"securityGroupId": {
"type": "string",
"description": "Optional. Enter a security group identifier that exists in the hosted AWS account. Security group Identifier must be in a valid format (for example: 'sg-0125be68a4625884ad') and must exist within the hosting account.",
"example": "sg-0125be68a4625884ad"
},
"preferredAvailabilityZones": {
"type": "array",
"description": "Optional. List the zone IDs for your preferred availability zones for the cloud provider and region.",
"items": {
"type": "string",
"description": "Optional. List the zone IDs for your preferred availability zones for the cloud provider and region."
}
},
"dryRun": {
"type": "boolean",
"description": "Optional. When 'false': Creates a deployment plan and deploys it, creating any resources required by the plan. When 'true': creates a read-only deployment plan, and does not create any resources. Default: 'false'",
"example": false
},
"databases": {
"type": "array",
"description": "List of databases in the subscription with local throughput details. Default: 1000 read and write ops/sec for each database",
"items": {
"$ref": "#/components/schemas/CrdbRegionSpec"
}
},
"respVersion": {
"type": "string",
"description": "Optional. RESP version must be compatible with Redis version.",
"example": "resp3",
"deprecated": true,
"enum": [
"resp2",
"resp3"
]
},
"customerManagedKeyResourceName": {
"type": "string",
"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": {
"type": "string",
"readOnly": true
}
},
"description": "Active active region creation request message"
},
"FixedDatabaseImportRequest": {
"required": [
"importFromUri",
"sourceType"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"databaseId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"sourceType": {
"type": "string",
"description": "Type of storage from which to import the database RDB file or Redis data.",
"example": "http",
"enum": [
"http",
"redis",
"ftp",
"aws-s3",
"azure-blob-storage",
"google-blob-storage"
]
},
"importFromUri": {
"type": "array",
"description": "One or more paths to source data files or Redis databases, as appropriate to specified source type.",
"items": {
"type": "string",
"description": "One or more paths to source data files or Redis databases, as appropriate to specified source type."
}
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Database import request"
},
"PrivateLinkPrincipalsDeleteRequest": {
"required": [
"principal"
],
"type": "object",
"properties": {
"subscriptionId": {
"type": "integer",
"format": "int32",
"readOnly": true
},
"principal": {
"type": "string",
"description": "An AWS account ID or ARN to remove from the private link",
"example": "123456789012"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Private Link principals delete request"
},
"CustomerManagedKeyProperties": {
"required": [
"customerManagedKeys"
],
"type": "object",
"properties": {
"customerManagedKeys": {
"type": "array",
"description": "The customer managed keys (CMK) to use for this subscription. If is active-active subscription, must set a key for each region.",
"items": {
"$ref": "#/components/schemas/CustomerManagedKey"
}
},
"deletionGracePeriod": {
"type": "string",
"description": "Optional. The grace period for deleting the subscription if Redis cannot access the provided key. Required when applying customer managed keys for a new subscription.",
"example": "alerts-only",
"enum": [
"alerts-only",
"immediate",
"15-minutes",
"30-minutes",
"1-hour",
"4-hours",
"8-hours",
"12-hours",
"24-hours"
]
}
},
"description": "Optional. Contains information about the keys used for each region. Can be used only with external cloud account"
},
"VpcPeeringCreateBaseRequest": {
"type": "object",
"properties": {
"provider": {
"type": "string"
},
"commandType": {
"type": "string",
"readOnly": true
}
},
"description": "Vpc peering creation request message",
"oneOf": [
{
"$ref": "#/components/schemas/VpcPeeringCreateAwsRequest"
},
{
"$ref": "#/components/schemas/VpcPeeringCreateGcpRequest"
}
]
}
},
"securitySchemes": {
"x-api-key": {
"type": "apiKey",
"name": "x-api-key",
"in": "header"
},
"x-api-secret-key": {
"type": "apiKey",
"name": "x-api-secret-key",
"in": "header"
},
"x-auth-token": {
"type": "apiKey",
"name": "x-auth-token",
"in": "header"
}
}
}
}