UNPKG

@itentialopensource/adapter-redis_cloud

Version:

This adapter integrates with system described as: redisCloud.

1,746 lines 206 kB
{ "id": "@itentialopensource/adapter-redis_cloud", "type": "Adapter", "export": "RedisCloud", "title": "Redis_cloud", "src": "adapter.js", "roles": [ "admin" ], "methods": [ { "name": "iapUpdateAdapterConfiguration", "summary": "Updates the adapter configuration", "description": "Updates the adapter configuration file with the provided changes", "input": [ { "name": "configFile", "type": "string", "info": "The name of the file to change", "required": true, "schema": { "title": "configFile", "type": "string" } }, { "name": "changes", "type": "object", "info": "JSON object containing the configuration changes", "required": true, "schema": { "title": "changes", "type": "object" } }, { "name": "entity", "type": "string", "info": "The entity in which the changes are being made", "required": false, "schema": { "title": "entity", "type": "string" } }, { "name": "type", "type": "string", "info": "The type of file to change - action, schema, or mock", "required": false, "schema": { "title": "type", "type": "string" } }, { "name": "action", "type": "string", "info": "The action to be changed", "required": false, "schema": { "title": "action", "type": "string" } }, { "name": "replace", "type": "boolean", "info": "True to replace entire mock data, false to merge/append", "required": false, "schema": { "title": "replace", "type": "boolean" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapUpdateAdapterConfiguration" }, "task": true }, { "name": "iapSuspendAdapter", "summary": "Suspends the adapter", "description": "Suspends the adapter", "input": [ { "name": "mode", "type": "enum", "enumerals": [ "pause", "error" ], "info": "How incoming requests are handled. Defaults to 'pause'", "description": "How incoming requests are handled. Defaults to 'pause'", "schema": { "title": "mode", "type": "string" }, "required": false } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing the adapter suspended status", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapSuspendAdapter" }, "task": true }, { "name": "iapUnsuspendAdapter", "summary": "Unsuspends the adapter", "description": "Unsuspends the adapter", "input": [], "output": { "name": "result", "type": "object", "description": "A JSON Object containing the adapter suspended status", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapUnsuspendAdapter" }, "task": true }, { "name": "iapGetAdapterQueue", "summary": "Return the requests that are waiting in the queue if throttling is enabled", "description": "Return the requests that are waiting in the queue if throttling is enabled", "input": [], "output": { "name": "result", "type": "object", "description": "A JSON Object containing the adapter queue", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapGetAdapterQueue" }, "task": true }, { "name": "iapFindAdapterPath", "summary": "Provides the ability to see if a particular API path is supported by the adapter", "description": "Provides the ability to see if a particular API path is supported by the adapter", "input": [ { "name": "apiPath", "type": "string", "info": "The API Path you want to check - make sure to not include base path and version", "description": "The API Path you want to check - make sure to not include base path and version", "schema": { "title": "apiPath", "type": "string" }, "required": true } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapFindAdapterPath" }, "task": true }, { "name": "iapTroubleshootAdapter", "summary": "Runs troubleshoot script for adapter", "description": "Runs troubleshoot script for adapter", "input": [ { "name": "props", "type": "object", "info": "Object containing configuration, healthcheck and auth properties {'connProps':{'host': 'api.service.com', 'base_path': '/', 'protocol': 'http', 'port': 443, 'version': 'v1'},'healthCheckEndpoint': '/healthcheck', 'auth': {'auth_method': 'no authentication', 'username': 'username', 'password': 'password'}}", "required": true, "schema": { "title": "props", "type": "object" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing the test results", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapTroubleshootAdapter" }, "task": true }, { "name": "iapRunAdapterHealthcheck", "summary": "Runs healthcheck script for adapter", "description": "Runs healthcheck script for adapter", "input": [], "output": { "name": "result", "type": "boolean", "description": "Whether healthcheck passed or failed", "schema": { "title": "result", "type": "boolean" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapRunAdapterHealthcheck" }, "task": true }, { "name": "iapRunAdapterConnectivity", "summary": "Runs connectivity check script for adapter", "description": "Runs connectivity check script for adapter", "input": [], "output": { "name": "result", "type": "object", "description": "A JSON Object containing the test results", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapRunAdapterConnectivity" }, "task": true }, { "name": "iapRunAdapterBasicGet", "summary": "Runs basicGet script for adapter", "description": "Runs basicGet script for adapter", "input": [ { "name": "maxCalls", "required": false, "type": "number", "info": "How many GET endpoints to test (defaults to 5)", "schema": { "title": "maxCalls", "type": "number", "default": 5 } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing the test results", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapRunAdapterBasicGet" }, "task": true }, { "name": "iapMoveAdapterEntitiesToDB", "summary": "Moves entities from an adapter into the Itential Platform database", "description": "Moves entities from an adapter into the Itential Platform database", "input": [], "output": { "name": "res", "type": "object", "description": "A JSON Object containing status, code and the response from the mongo transaction", "schema": { "title": "res", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapMoveAdapterEntitiesToDB" }, "task": true }, { "name": "iapDeactivateTasks", "summary": "Deactivate the inputted tasks", "description": "Deactivate the inputted tasks", "input": [ { "name": "tasks", "type": "array", "description": "Tasks to deactivate", "schema": { "title": "tasks", "type": "array" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing success status", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapDeactivateTasks" }, "task": true }, { "name": "iapActivateTasks", "summary": "Activate the inputted tasks", "description": "activate the inputted tasks", "input": [ { "name": "tasks", "type": "array", "description": "Tasks to activate", "schema": { "title": "tasks", "type": "array" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing success status", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapActivateTasks" }, "task": true }, { "name": "iapPopulateEntityCache", "summary": "Populate the cache for the given entities", "description": "Populate the cache for the given entities", "input": [ { "name": "entityTypes", "type": "array", "info": "the entity type(s) to populate", "required": true, "schema": { "title": "entityTypes", "type": "array" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapPopulateEntityCache" }, "task": true }, { "name": "iapRetrieveEntitiesCache", "summary": "Retrieves data from cache for specified entity type", "description": "Retrieves data from cache for specified entity type", "input": [ { "name": "entityType", "type": "string", "info": "entity of which to retrieve", "required": true, "schema": { "title": "entityType", "type": "string" } }, { "name": "options", "type": "object", "info": "settings of which data to return and how to return it", "required": false, "schema": { "title": "options", "type": "object" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapRetrieveEntitiesCache" }, "task": true }, { "name": "getDevice", "summary": "Get the Appliance", "description": "Get the Appliance", "input": [ { "name": "deviceName", "type": "string", "info": "An Appliance Device Name", "required": true, "schema": { "title": "deviceName", "type": "string" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/getDevice" }, "task": false }, { "name": "getDevicesFiltered", "summary": "Get Appliances that match the filter", "description": "Get Appliances that match the filter", "input": [ { "name": "options", "type": "object", "info": "options - e.g. { 'start': 1, 'limit': 20, 'filter': { 'name': 'abc123' } }", "required": true, "schema": { "title": "options", "type": "object" } } ], "output": { "name": "result", "type": "array", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "array" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/getDevicesFiltered" }, "task": false }, { "name": "isAlive", "summary": "Checks the status for the provided Appliance", "description": "Checks the status for the provided Appliance", "input": [ { "name": "deviceName", "type": "string", "info": "An Appliance Device Name", "required": true, "schema": { "title": "deviceName", "type": "string" } } ], "output": { "name": "result", "type": "boolean", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "boolean" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/isAlive" }, "task": false }, { "name": "getConfig", "summary": "Gets a config for the provided Appliance", "description": "Gets a config for the provided Appliance", "input": [ { "name": "deviceName", "type": "string", "info": "An Appliance Device Name", "required": true, "schema": { "title": "deviceName", "type": "string" } }, { "name": "format", "type": "string", "info": "The format to be returned - this is ignored as we always return json", "required": false, "schema": { "title": "format", "type": "string" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/getConfig" }, "task": false }, { "name": "iapGetDeviceCount", "summary": "Gets a device count from the system", "description": "Gets a device count from the system", "input": [], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapGetDeviceCount" }, "task": false }, { "name": "iapExpandedGenericAdapterRequest", "summary": "Makes the requested generic call with additional options", "description": "Makes the requested generic call with additional options via metadata", "input": [ { "name": "metadata", "type": "object", "info": "metadata for the call (optional)", "description": "metadata for the call - allows for many enhancements (optional)", "schema": { "title": "metadata", "type": "object" }, "required": false }, { "name": "uriPath", "type": "string", "info": "the path of the api call - do not include the host, port, base path or version", "description": "the path of the api call", "schema": { "title": "uriPath", "type": "string" }, "required": false }, { "name": "restMethod", "type": "string", "info": "the rest method (GET, POST, PUT, PATCH, DELETE)", "description": "the rest method (GET, POST, PUT, PATCH, DELETE)", "schema": { "title": "restMethod", "type": "string" }, "required": false }, { "name": "pathVars", "type": "object", "info": "the parameters to be put within the url path (optional)", "description": "the parameters to be put within the url path (optional)", "schema": { "title": "pathVars", "type": "object" }, "required": false }, { "name": "queryData", "type": "object", "info": "the query parameters to be put on the url (optional)", "description": "the query parameters to be put on the url (optional)", "schema": { "title": "queryData", "type": "object" }, "required": false }, { "name": "requestBody", "type": "object", "info": "the payload to be sent with the request (optional)", "description": "the payload to be sent with the request (optional)", "schema": { "title": "requestBody", "type": "object" }, "required": false }, { "name": "addlHeaders", "type": "object", "info": "additional headers to be put on the call (optional)", "description": "additional headers to be put on the call (optional)", "schema": { "title": "addlHeaders", "type": "object" }, "required": false } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/iapExpandedGenericAdapterRequest" }, "task": true }, { "name": "genericAdapterRequest", "summary": "Makes the requested generic call", "description": "Makes the requested generic call", "input": [ { "name": "uriPath", "type": "string", "info": "the path of the api call - do not include the host, port, base path or version", "description": "the path of the api call", "schema": { "title": "uriPath", "type": "string" }, "required": true }, { "name": "restMethod", "type": "string", "info": "the rest method (GET, POST, PUT, PATCH, DELETE)", "description": "the rest method (GET, POST, PUT, PATCH, DELETE)", "schema": { "title": "restMethod", "type": "string" }, "required": true }, { "name": "queryData", "type": "object", "info": "the query parameters to be put on the url (optional)", "description": "the query parameters to be put on the url (optional)", "schema": { "title": "queryData", "type": "object" }, "required": false }, { "name": "requestBody", "type": "object", "info": "the payload to be sent with the request (optional)", "description": "the payload to be sent with the request (optional)", "schema": { "title": "requestBody", "type": "object" }, "required": false }, { "name": "addlHeaders", "type": "object", "info": "additional headers to be put on the call (optional)", "description": "additional headers to be put on the call (optional)", "schema": { "title": "addlHeaders", "type": "object" }, "required": false } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/genericAdapterRequest" }, "task": true }, { "name": "genericAdapterRequestNoBasePath", "summary": "Makes the requested generic call", "description": "Makes the requested generic call", "input": [ { "name": "uriPath", "type": "string", "info": "the path of the api call - do not include the host, port, base path or version", "description": "the path of the api call", "schema": { "title": "uriPath", "type": "string" }, "required": true }, { "name": "restMethod", "type": "string", "info": "the rest method (GET, POST, PUT, PATCH, DELETE)", "description": "the rest method (GET, POST, PUT, PATCH, DELETE)", "schema": { "title": "restMethod", "type": "string" }, "required": true }, { "name": "queryData", "type": "object", "info": "the query parameters to be put on the url (optional)", "description": "the query parameters to be put on the url (optional)", "schema": { "title": "queryData", "type": "object" }, "required": false }, { "name": "requestBody", "type": "object", "info": "the payload to be sent with the request (optional)", "description": "the payload to be sent with the request (optional)", "schema": { "title": "requestBody", "type": "object" }, "required": false }, { "name": "addlHeaders", "type": "object", "info": "additional headers to be put on the call (optional)", "description": "additional headers to be put on the call (optional)", "schema": { "title": "addlHeaders", "type": "object" }, "required": false } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/genericAdapterRequestNoBasePath" }, "task": true }, { "name": "iapRunAdapterLint", "summary": "Run the adapter lint script to return the results", "description": "Run the adapter lint script to return the results", "input": [], "output": { "name": "result", "type": "string", "description": "A string containing the run results", "schema": { "title": "result", "type": "string" } }, "roles": [ "admin" ], "route": { "verb": "GET", "path": "/iapRunAdapterLint" }, "task": true }, { "name": "iapRunAdapterTests", "summary": "Run the adapter test scripts (baseunit and unit) to return the results", "description": "Run the adapter test scripts (baseunit and unit) to return the results", "input": [], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "GET", "path": "/iapRunAdapterTests" }, "task": true }, { "name": "iapGetAdapterInventory", "summary": "Provide inventory information abbout the adapter", "description": "Provide inventory information abbout the adapter", "input": [], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "GET", "path": "/iapGetAdapterInventory" }, "task": true }, { "name": "getUserById", "summary": "Get user by id", "description": "Information on user identified by user Id", "input": [ { "name": "userId", "type": "number", "info": "User Id: 123", "required": true, "schema": { "title": "userId", "type": "number" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/getUserById" }, "task": true }, { "name": "updateUser", "summary": "Update user", "description": "Update an existing user by Id", "input": [ { "name": "userId", "type": "number", "info": "User Id: 123", "required": true, "schema": { "title": "userId", "type": "number" } }, { "name": "body", "type": "object", "info": ": {\"userId\": 123, \"name\": \"string\", \"role\": \"Must be one of [Owner, Member, Viewer, Manager]\", \"commandType\": \"string\"}", "required": true, "schema": { "required": [ "name" ], "type": "object", "properties": { "userId": { "type": "integer", "readOnly": true }, "name": { "type": "string", "description": "User name", "example": "My new user name" }, "role": { "type": "string", "description": "Role name", "enum": [ "Owner", "Member", "Viewer", "Manager" ] }, "commandType": { "type": "string", "readOnly": true } }, "description": "User update request", "definitions": {} } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/updateUser" }, "task": true }, { "name": "deleteUserById", "summary": "Delete user", "description": "Delete a user from current account", "input": [ { "name": "userId", "type": "number", "info": "User Id: 123", "required": true, "schema": { "title": "userId", "type": "number" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/deleteUserById" }, "task": true }, { "name": "getAllUsers", "summary": "Get users", "description": "Information on current account's users", "input": [], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "GET", "path": "/getAllUsers" }, "task": true }, { "name": "getSubscriptionById", "summary": "Get subscription by id", "description": "Information on subscription identified by subscription Id", "input": [ { "name": "subscriptionId", "type": "number", "info": "Subscription Id: 123", "required": true, "schema": { "title": "subscriptionId", "type": "number" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/getSubscriptionById" }, "task": true }, { "name": "updateSubscription", "summary": "Update subscription", "description": "Update an existing subscription by Id", "input": [ { "name": "subscriptionId", "type": "number", "info": "Subscription Id: 123", "required": true, "schema": { "title": "subscriptionId", "type": "number" } }, { "name": "body", "type": "object", "info": ": {\"subscriptionId\": 123, \"name\": \"string\", \"paymentMethodId\": 123, \"commandType\": \"string\"}", "required": true, "schema": { "required": [ "name" ], "type": "object", "properties": { "subscriptionId": { "type": "integer", "readOnly": true }, "name": { "type": "string", "description": "Subscription name", "example": "My new subscription name" }, "paymentMethodId": { "type": "integer", "description": "Payment method Id" }, "commandType": { "type": "string", "readOnly": true } }, "description": "Subscription update request", "definitions": {} } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/updateSubscription" }, "task": true }, { "name": "deleteSubscriptionById", "summary": "Delete subscription", "description": "Delete a subscription identified by subscription Id (subscription must be empty, i.e. cannot contain databases)", "input": [ { "name": "subscriptionId", "type": "number", "info": "Subscription Id: 123", "required": true, "schema": { "title": "subscriptionId", "type": "number" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/deleteSubscriptionById" }, "task": true }, { "name": "updateActiveActiveVpcPeering", "summary": "Update an active-active subscription VPC peering", "description": "Update an existing VPC peering in an existing active-active subscription.", "input": [ { "name": "subscriptionId", "type": "number", "info": "Subscription Id: 123", "required": true, "schema": { "title": "subscriptionId", "type": "number" } }, { "name": "peeringId", "type": "number", "info": "VpcPeering Id: 123", "required": true, "schema": { "title": "peeringId", "type": "number" } }, { "name": "body", "type": "object", "info": ": {\"subscriptionId\": 123, \"vpcPeeringId\": 123, \"vpcCidr\": \"string\", \"vpcCidrs\": \"array\", \"commandType\": \"string\"}", "required": true, "schema": { "type": "object", "properties": { "subscriptionId": { "type": "integer", "readOnly": true }, "vpcPeeringId": { "type": "integer", "description": "VPC Peering id to update", "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", "definitions": {} } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/updateActiveActiveVpcPeering" }, "task": true }, { "name": "deleteActiveActiveVpcPeering", "summary": "Delete an active-active subscription VPC peering", "description": "Delete a VPC peering from an existing active-active subscription.", "input": [ { "name": "subscriptionId", "type": "number", "info": "Subscription Id: 123", "required": true, "schema": { "title": "subscriptionId", "type": "number" } }, { "name": "peeringId", "type": "number", "info": "VpcPeering Id: 123", "required": true, "schema": { "title": "peeringId", "type": "number" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/deleteActiveActiveVpcPeering" }, "task": true }, { "name": "updateVpcPeering", "summary": "Update subscription peering", "description": "Update an existing VPC peering in an existing subscription.", "input": [ { "name": "subscriptionId", "type": "number", "info": "Subscription Id: 123", "required": true, "schema": { "title": "subscriptionId", "type": "number" } }, { "name": "peeringId", "type": "number", "info": "VpcPeering Id: 123", "required": true, "schema": { "title": "peeringId", "type": "number" } }, { "name": "body", "type": "object", "info": ": {\"subscriptionId\": 123, \"vpcPeeringId\": 123, \"vpcCidr\": \"string\", \"vpcCidrs\": \"array\", \"commandType\": \"string\"}", "required": true, "schema": { "type": "object", "properties": { "subscriptionId": { "type": "integer", "readOnly": true }, "vpcPeeringId": { "type": "integer", "description": "VPC Peering ID to update", "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", "definitions": {} } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/updateVpcPeering" }, "task": true }, { "name": "deleteVpcPeering", "summary": "Delete subscription peering", "description": "Deletes a VPC peering identified by an id", "input": [ { "name": "subscriptionId", "type": "number", "info": "Subscription Id: 123", "required": true, "schema": { "title": "subscriptionId", "type": "number" } }, { "name": "peeringId", "type": "number", "info": "VpcPeering Id: 123", "required": true, "schema": { "title": "peeringId", "type": "number" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/deleteVpcPeering" }, "task": true }, { "name": "getCidrWhiteList", "summary": "Get subscription CIDR", "description": "Get CIDR whitelist", "input": [ { "name": "subscriptionId", "type": "number", "info": "Subscription Id: 123", "required": true, "schema": { "title": "subscriptionId", "type": "number" } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/getCidrWhiteList" }, "task": true }, { "name": "updateSubscriptionCidrWhiteList", "summary": "Update subscription CIDR", "description": "Update subscription CIDR whitelist", "input": [ { "name": "subscriptionId", "type": "number", "info": "Subscription Id: 123", "required": true, "schema": { "title": "subscriptionId", "type": "number" } }, { "name": "body", "type": "object", "info": ": {\"subscriptionId\": 123, \"cidrIps\": \"array\", \"securityGroupIds\": \"array\", \"commandType\": \"string\"}", "required": true, "schema": { "type": "object", "properties": { "subscriptionId": { "type": "integer", "readOnly": true }, "cidrIps": { "type": "array", "description": "CIDR values in an array format (example: ['10.1.1.0/32'])", "items": { "type": "string", "description": "CIDR values in an array format (example: ['10.1.1.0/32'])" } }, "securityGroupIds": { "type": "array", "description": "AWS Security group identifier", "items": { "type": "string", "description": "AWS Security group identifier" } }, "commandType": { "type": "string", "readOnly": true } }, "description": "Update subscription", "definitions": {} } } ], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "POST", "path": "/updateSubscriptionCidrWhiteList" }, "task": true }, { "name": "getAllSubscriptions", "summary": "Get subscriptions", "description": "Information on current account's subscriptions", "input": [], "output": { "name": "result", "type": "object", "description": "A JSON Object containing status, code and the result", "schema": { "title": "result", "type": "object" } }, "roles": [ "admin" ], "route": { "verb": "GET", "path": "/getAllSubscriptions" }, "task": true }, { "name": "createSubscription", "summary": "Create subscription", "description": "Create a new subscription", "input": [ { "name": "body", "type": "object", "info": ": {\"name\": \"string\", \"dryRun\": \"boolean\", \"deploymentType\": \"Must be one of [single-region, active-active]\", \"planId\": 123, \"paymentMethod\": \"Must be one of [credit-card, marketplace]\", \"paymentMethodId\": 123, \"memoryStorage\": \"Must be one of [ram, ram-and-flash]\", \"persistentStorageEncryption\": \"boolean\", \"cloudProviders\": [{\"provider\": \"Must be one of [AWS, GCP]\", \"cloudAccountId\": 123, \"regions\": [{\"region\": \"string\", \"multipleAvailabilityZones\": \"boolean\", \"preferredAvailabilityZones\": \"array\", \"networking\": {\"deploymentCIDR\": \"string\", \"vpcId\": \"string\"}}]}], \"databases\": [{\"name\": \"string\", \"protocol\": \"Must be one of [redis, memcached]\", \"memoryLimitInGb\": 123, \"supportOSSClusterApi\": \"boolean\", \"dataPersistence\": \"Must be one of [none, aof-every-1-second, aof-every-write, snapshot-every-1-hour, snapshot-every-6-hours, snapshot-every-12-hours]\", \"replication\": \"boolean\", \"throughputMeasurement\": {\"by\": \"Must be one of [operations-per-second, number-of-shards]\", \"value\": 123}, \"localThroughputMeasurement\": [{\"region\": \"string\", \"writeOperationsPerSecond\": 123, \"readOperationsPerSecond\": 123}], \"modules\": [{\"name\": \"string\", \"parameters\": \"object\"}], \"quantity\": 123, \"averageItemSizeInBytes\": 123}], \"redisVersion\": \"Must be one of [default, latest]\", \"commandType\": \"string\"}", "required": true, "schema": { "required": [ "cloudProviders", "databases" ], "type": "object", "properties": { "name": { "type": "string", "description": "Optional. 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 without any resource creation. Default: 'true'", "example": false }, "deploymentType": { "type": "string", "description": "Optional. When 'single-region' or null: Creates a single region subscription. When 'active-active': creates an active-active (multi-region) subscription", "example": "single-region", "enum": [ "single-region", "active-active" ] }, "planId": { "type": "integer", "description": "Optional. A predefined plan Id (see lookup API '/plans'). If specified, the plan defines the billing for the created subscription and overrides deployment and configuration based on specific plan details." }, "paymentMethod": { "type": "string", "description": "Optional. Payment method for the requested subscription. If credit card is specified, the payment method Id must be defined. Default: 'credit-card'", "enum": [ "credit-card", "marketplace" ] }, "paymentMethodId": { "type": "integer", "description": "A valid payment method (credit card, wire transfer etc) pre-defined in the current account. It will be billed for any charges related to the created subscription). Not allowed for GCP account " }, "memoryStorage": { "type": "string", "description": "Optional. Memory storage preference: either 'ram' or a combination of 'ram-and-flash'. Default: 'ram'", "example": "ram", "enum": [ "ram", "ram-and-flash" ] }, "persistentStorageEncryptio