Amazon Redshift Redshift Workgroup API

The Redshift Workgroup API from Amazon Redshift — 5 operation(s) for redshift workgroup.

GitHub OpenAPI

Operations 5

POST /#CreateWorkgroup Create Workgroup #
POST /#GetWorkgroup Get Workgroup #
POST /#UpdateWorkgroup Update Workgroup #
POST /#DeleteWorkgroup Delete Workgroup #
POST /#ListWorkgroups List Workgroups #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/amazon-redshift:amazon-redshift-workgroup-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

amazon-redshift-workgroup-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Amazon Redshift Workgroup API
  version: '2012-12-01'
  description: Generated from AWS's published Smithy model for Amazon Redshift. 5 operation(s).
  contact:
    name: Amazon Web Services
    url: https://aws.amazon.com/contact-us/
  license:
    name: Apache 2.0
    identifier: Apache-2.0
    url: https://github.com/aws/api-models-aws/blob/main/LICENSE
servers:
- url: https://redshift-serverless.{region}.amazonaws.com
  variables:
    region:
      default: us-east-1
security:
- sigv4: []
paths:
  /#CreateWorkgroup:
    post:
      operationId: CreateWorkgroup
      summary: Create Workgroup
      description: 'Creates an workgroup in Amazon Redshift Serverless. VPC Block Public Access (BPA) enables you to block
        resources in VPCs and subnets that you own in a Region from reaching or being reached from the internet through internet
        gateways and egress-only internet gateways. If a workgroup is in an account with VPC BPA turned on, the following
        capabilities are blocked: Creating a public access workgroup Modifying a private workgroup to public Adding a subnet
        with VPC BPA turned on to the workgroup when the workgroup is public For more information about VPC BPA, see Block
        public access to VPCs and subnets in the Amazon VPC User Guide.'
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/CreateWorkgroupResponse'
        '409':
          description: ConflictException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ConflictException'
        '400':
          description: InsufficientCapacityException; Ipv6CidrBlockNotFoundException; TooManyTagsException; ValidationException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/InsufficientCapacityException'
        '500':
          description: InternalServerException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/RedshiftServerlessInternalServerException'
        '404':
          description: ResourceNotFoundException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/RedshiftServerlessResourceNotFoundException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - RedshiftServerless.CreateWorkgroup
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/CreateWorkgroupRequest'
      tags:
      - Workgroup
  /#GetWorkgroup:
    post:
      operationId: GetWorkgroup
      summary: Get Workgroup
      description: Returns information about a specific workgroup.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/GetWorkgroupResponse'
        '500':
          description: InternalServerException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/RedshiftServerlessInternalServerException'
        '404':
          description: ResourceNotFoundException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/RedshiftServerlessResourceNotFoundException'
        '400':
          description: ValidationException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/RedshiftServerlessValidationException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - RedshiftServerless.GetWorkgroup
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/GetWorkgroupRequest'
      tags:
      - Workgroup
  /#UpdateWorkgroup:
    post:
      operationId: UpdateWorkgroup
      summary: Update Workgroup
      description: 'Updates a workgroup with the specified configuration settings. You can''t update multiple parameters in
        one request. For example, you can update baseCapacity or port in a single request, but you can''t update both in the
        same request. VPC Block Public Access (BPA) enables you to block resources in VPCs and subnets that you own in a Region
        from reaching or being reached from the internet through internet gateways and egress-only internet gateways. If a
        workgroup is in an account with VPC BPA turned on, the following capabilities are blocked: Creating a public access
        workgroup Modifying a private workgroup to public Adding a subnet with VPC BPA turned on to the workgroup when the
        workgroup is public For more information about VPC BPA, see Block public access to VPCs and subnets in the Amazon
        VPC User Guide.'
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/UpdateWorkgroupResponse'
        '409':
          description: ConflictException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ConflictException'
        '400':
          description: InsufficientCapacityException; Ipv6CidrBlockNotFoundException; ValidationException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/InsufficientCapacityException'
        '500':
          description: InternalServerException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/RedshiftServerlessInternalServerException'
        '404':
          description: ResourceNotFoundException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/RedshiftServerlessResourceNotFoundException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - RedshiftServerless.UpdateWorkgroup
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/UpdateWorkgroupRequest'
      tags:
      - Workgroup
  /#DeleteWorkgroup:
    post:
      operationId: DeleteWorkgroup
      summary: Delete Workgroup
      description: Deletes a workgroup.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/DeleteWorkgroupResponse'
        '409':
          description: ConflictException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ConflictException'
        '500':
          description: InternalServerException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/RedshiftServerlessInternalServerException'
        '404':
          description: ResourceNotFoundException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/RedshiftServerlessResourceNotFoundException'
        '400':
          description: ValidationException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/RedshiftServerlessValidationException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - RedshiftServerless.DeleteWorkgroup
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/DeleteWorkgroupRequest'
      tags:
      - Workgroup
  /#ListWorkgroups:
    post:
      operationId: ListWorkgroups
      summary: List Workgroups
      description: Returns information about a list of specified workgroups.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ListWorkgroupsResponse'
        '500':
          description: InternalServerException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/RedshiftServerlessInternalServerException'
        '400':
          description: ValidationException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/RedshiftServerlessValidationException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - RedshiftServerless.ListWorkgroups
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/ListWorkgroupsRequest'
      tags:
      - Workgroup
components:
  securitySchemes:
    sigv4:
      type: apiKey
      in: header
      name: Authorization
      description: AWS Signature Version 4. The Authorization header carries an AWS4-HMAC-SHA256 signature over the canonical
        request, with X-Amz-Date (and X-Amz-Security-Token for temporary credentials). Not a bearer token.
      x-aws-sigv4:
        signingName: redshift-serverless
  schemas:
    ConfigParameter:
      type: object
      properties:
        parameterKey:
          type: string
          description: 'The key of the parameter. The options are auto_mv, datestyle, enable_case_sensitive_identifier, enable_user_activity_logging,
            query_group, search_path, require_ssl, use_fips_ssl, and either wlm_json_configuration or query monitoring metrics
            that let you define performance boundaries. You can either specify individual query monitoring metrics (such as
            max_scan_row_count, max_query_execution_time) or use wlm_json_configuration to define query queues with rules,
            but not both. If you''re using wlm_json_configuration, the maximum size of parameterValue is 8000 characters.
            For more information about '
        parameterValue:
          type: string
          description: The value of the parameter to set.
    ConflictException:
      type: object
      properties:
        message:
          type: string
      required:
      - message
    CreateWorkgroupRequest:
      type: object
      properties:
        workgroupName:
          type: string
          description: The name of the created workgroup.
        namespaceName:
          type: string
          description: The name of the namespace to associate with the workgroup.
        baseCapacity:
          type: integer
          description: The base data warehouse capacity of the workgroup in Redshift Processing Units (RPUs).
        enhancedVpcRouting:
          type: boolean
          description: The value that specifies whether to turn on enhanced virtual private cloud (VPC) routing, which forces
            Amazon Redshift Serverless to route traffic through your VPC instead of over the internet.
        configParameters:
          type: array
          items:
            $ref: '#/components/schemas/ConfigParameter'
          description: An array of parameters to set for advanced control over a database. The options are auto_mv, datestyle,
            enable_case_sensitive_identifier, enable_user_activity_logging, query_group, search_path, require_ssl, use_fips_ssl,
            and either wlm_json_configuration or query monitoring metrics that let you define performance boundaries. You
            can either specify individual query monitoring metrics (such as max_scan_row_count, max_query_execution_time)
            or use wlm_json_configuration to define query queues with rules, but not both. If you're using wlm_json_configuration,
            the maximum size of parameterValue is 80
        securityGroupIds:
          type: array
          items:
            type: string
          description: An array of security group IDs to associate with the workgroup.
        subnetIds:
          type: array
          items:
            type: string
          description: An array of VPC subnet IDs to associate with the workgroup.
        publiclyAccessible:
          type: boolean
          description: A value that specifies whether the workgroup can be accessed from a public network.
        tags:
          type: array
          items:
            $ref: '#/components/schemas/RedshiftServerlessTag'
          description: A array of tag instances.
        port:
          type: integer
          description: The custom port to use when connecting to a workgroup. Valid port ranges are 5431-5455 and 8191-8215.
            The default is 5439.
        maxCapacity:
          type: integer
          description: The maximum data-warehouse capacity Amazon Redshift Serverless uses to serve queries. The max capacity
            is specified in RPUs.
        pricePerformanceTarget:
          $ref: '#/components/schemas/PerformanceTarget'
        ipAddressType:
          type: string
          description: The IP address type that the workgroup supports. Possible values are ipv4 and dualstack.
        trackName:
          type: string
          description: An optional parameter for the name of the track for the workgroup. If you don't provide a track name,
            the workgroup is assigned to the current track.
        extraComputeForAutomaticOptimization:
          type: boolean
          description: 'If true, allocates additional compute resources for running automatic optimization operations. Default:
            false'
      required:
      - workgroupName
      - namespaceName
    CreateWorkgroupResponse:
      type: object
      properties:
        workgroup:
          $ref: '#/components/schemas/Workgroup'
    DeleteWorkgroupRequest:
      type: object
      properties:
        workgroupName:
          type: string
          description: The name of the workgroup to be deleted.
      required:
      - workgroupName
    DeleteWorkgroupResponse:
      type: object
      properties:
        workgroup:
          $ref: '#/components/schemas/Workgroup'
      required:
      - workgroup
    GetWorkgroupRequest:
      type: object
      properties:
        workgroupName:
          type: string
          description: The name of the workgroup to return information for.
      required:
      - workgroupName
    GetWorkgroupResponse:
      type: object
      properties:
        workgroup:
          $ref: '#/components/schemas/Workgroup'
      required:
      - workgroup
    InsufficientCapacityException:
      type: object
      properties:
        message:
          type: string
      required:
      - message
    ListWorkgroupsRequest:
      type: object
      properties:
        nextToken:
          type: string
          description: If your initial ListWorkgroups operation returns a nextToken, you can include the returned nextToken
            in following ListNamespaces operations, which returns results in the next page.
        maxResults:
          type: integer
          description: An optional parameter that specifies the maximum number of results to return. You can use nextToken
            to display the next page of results.
        ownerAccount:
          type: string
          description: The owner Amazon Web Services account for the Amazon Redshift Serverless workgroup.
    ListWorkgroupsResponse:
      type: object
      properties:
        nextToken:
          type: string
          description: If nextToken is returned, there are more results available. The value of nextToken is a unique pagination
            token for each page. To retrieve the next page, make the call again using the returned token.
        workgroups:
          type: array
          items:
            $ref: '#/components/schemas/Workgroup'
          description: The returned array of workgroups.
      required:
      - workgroups
    PerformanceTarget:
      type: object
      properties:
        status:
          type: string
          description: Whether the price performance target is enabled for the workgroup.
        level:
          type: integer
          description: The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100.
            These correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE.
    RedshiftServerlessEndpoint:
      type: object
      properties:
        address:
          type: string
          description: The DNS address of the VPC endpoint.
        port:
          type: integer
          description: The port that Amazon Redshift Serverless listens on.
        vpcEndpoints:
          type: array
          items:
            $ref: '#/components/schemas/RedshiftServerlessVpcEndpoint'
          description: An array of VpcEndpoint objects.
    RedshiftServerlessInternalServerException:
      type: object
      properties:
        message:
          type: string
      required:
      - message
    RedshiftServerlessNetworkInterface:
      type: object
      properties:
        networkInterfaceId:
          type: string
          description: The unique identifier of the network interface.
        subnetId:
          type: string
          description: The unique identifier of the subnet.
        privateIpAddress:
          type: string
          description: The IPv4 address of the network interface within the subnet.
        availabilityZone:
          type: string
          description: The availability Zone.
        ipv6Address:
          type: string
          description: The IPv6 address of the network interface within the subnet.
    RedshiftServerlessResourceNotFoundException:
      type: object
      properties:
        message:
          type: string
        resourceName:
          type: string
          description: The name of the resource that could not be found.
      required:
      - message
    RedshiftServerlessTag:
      type: object
      properties:
        key:
          type: string
          description: The key to use in the tag.
        value:
          type: string
          description: The value of the tag.
      required:
      - key
      - value
    RedshiftServerlessValidationException:
      type: object
      properties:
        message:
          type: string
      required:
      - message
    RedshiftServerlessVpcEndpoint:
      type: object
      properties:
        vpcEndpointId:
          type: string
          description: The connection endpoint ID for connecting to Amazon Redshift Serverless.
        vpcId:
          type: string
          description: The VPC identifier that the endpoint is associated with.
        networkInterfaces:
          type: array
          items:
            $ref: '#/components/schemas/RedshiftServerlessNetworkInterface'
          description: One or more network interfaces of the endpoint. Also known as an interface endpoint.
    UpdateWorkgroupRequest:
      type: object
      properties:
        workgroupName:
          type: string
          description: The name of the workgroup to update. You can't update the name of a workgroup once it is created.
        baseCapacity:
          type: integer
          description: The new base data warehouse capacity in Redshift Processing Units (RPUs).
        enhancedVpcRouting:
          type: boolean
          description: The value that specifies whether to turn on enhanced virtual private cloud (VPC) routing, which forces
            Amazon Redshift Serverless to route traffic through your VPC.
        configParameters:
          type: array
          items:
            $ref: '#/components/schemas/ConfigParameter'
          description: An array of parameters to set for advanced control over a database. The options are auto_mv, datestyle,
            enable_case_sensitive_identifier, enable_user_activity_logging, query_group, search_path, require_ssl, use_fips_ssl,
            and either wlm_json_configuration or query monitoring metrics that let you define performance boundaries. You
            can either specify individual query monitoring metrics (such as max_scan_row_count, max_query_execution_time)
            or use wlm_json_configuration to define query queues with rules, but not both. If you're using wlm_json_configuration,
            the maximum size of parameterValue is 80
        publiclyAccessible:
          type: boolean
          description: A value that specifies whether the workgroup can be accessible from a public network.
        subnetIds:
          type: array
          items:
            type: string
          description: An array of VPC subnet IDs to associate with the workgroup.
        securityGroupIds:
          type: array
          items:
            type: string
          description: An array of security group IDs to associate with the workgroup.
        port:
          type: integer
          description: The custom port to use when connecting to a workgroup. Valid port ranges are 5431-5455 and 8191-8215.
            The default is 5439.
        maxCapacity:
          type: integer
          description: The maximum data-warehouse capacity Amazon Redshift Serverless uses to serve queries. The max capacity
            is specified in RPUs.
        ipAddressType:
          type: string
          description: The IP address type that the workgroup supports. Possible values are ipv4 and dualstack.
        pricePerformanceTarget:
          $ref: '#/components/schemas/PerformanceTarget'
        trackName:
          type: string
          description: An optional parameter for the name of the track for the workgroup. If you don't provide a track name,
            the workgroup is assigned to the current track.
        extraComputeForAutomaticOptimization:
          type: boolean
          description: 'If true, allocates additional compute resources for running automatic optimization operations. Default:
            false'
      required:
      - workgroupName
    UpdateWorkgroupResponse:
      type: object
      properties:
        workgroup:
          $ref: '#/components/schemas/Workgroup'
      required:
      - workgroup
    Workgroup:
      type: object
      properties:
        workgroupId:
          type: string
          description: The unique identifier of the workgroup.
        workgroupArn:
          type: string
          description: The Amazon Resource Name (ARN) that links to the workgroup.
        workgroupName:
          type: string
          description: The name of the workgroup.
        namespaceName:
          type: string
          description: The namespace the workgroup is associated with.
        baseCapacity:
          type: integer
          description: The base data warehouse capacity of the workgroup in Redshift Processing Units (RPUs).
        enhancedVpcRouting:
          type: boolean
          description: The value that specifies whether to enable enhanced virtual private cloud (VPC) routing, which forces
            Amazon Redshift Serverless to route traffic through your VPC.
        configParameters:
          type: array
          items:
            $ref: '#/components/schemas/ConfigParameter'
          description: An array of parameters to set for advanced control over a database. The options are auto_mv, datestyle,
            enable_case_sensitive_identifier, enable_user_activity_logging, query_group, search_path, require_ssl, use_fips_ssl,
            and either wlm_json_configuration or query monitoring metrics that let you define performance boundaries. You
            can either specify individual query monitoring metrics (such as max_scan_row_count, max_query_execution_time)
            or use wlm_json_configuration to define query queues with rules, but not both. If you're using wlm_json_configuration,
            the maximum size of parameterValue is 80
        securityGroupIds:
          type: array
          items:
            type: string
          description: An array of security group IDs to associate with the workgroup.
        subnetIds:
          type: array
          items:
            type: string
          description: An array of subnet IDs the workgroup is associated with.
        status:
          type: string
          description: The status of the workgroup.
        endpoint:
          $ref: '#/components/schemas/RedshiftServerlessEndpoint'
        publiclyAccessible:
          type: boolean
          description: A value that specifies whether the workgroup can be accessible from a public network.
        creationDate:
          type: string
          description: The creation date of the workgroup.
        port:
          type: integer
          description: The custom port to use when connecting to a workgroup. Valid port ranges are 5431-5455 and 8191-8215.
            The default is 5439.
        customDomainName:
          type: string
          description: The custom domain name associated with the workgroup.
        customDomainCertificateArn:
          type: string
          description: The custom domain name’s certificate Amazon resource name (ARN).
        customDomainCertificateExpiryTime:
          type: string
          description: The expiration time for the certificate.
        workgroupVersion:
          type: string
          description: The Amazon Redshift Serverless version of your workgroup. For more information about Amazon Redshift
            Serverless versions, seeCluster versions for Amazon Redshift.
        patchVersion:
          type: string
          description: The patch version of your Amazon Redshift Serverless workgroup. For more information about patch versions,
            see Cluster versions for Amazon Redshift.
        maxCapacity:
          type: integer
          description: The maximum data-warehouse capacity Amazon Redshift Serverless uses to serve queries. The max capacity
            is specified in RPUs.
        crossAccountVpcs:
          type: array
          items:
            type: string
          description: A list of VPCs. Each entry is the unique identifier of a virtual private cloud with access to Amazon
            Redshift Serverless. If all of the VPCs for the grantee are allowed, it shows an asterisk.
        ipAddressType:
          type: string
          description: The IP address type that the workgroup supports. Possible values are ipv4 and dualstack.
        pricePerformanceTarget:
          $ref: '#/components/schemas/PerformanceTarget'
        trackName:
          type: string
          description: The name of the track for the workgroup.
        pendingTrackName:
          type: string
          description: The name for the track that you want to assign to the workgroup. When the track changes, the workgroup
            is switched to the latest workgroup release available for the track. At this point, the track name is applied.
        extraComputeForAutomaticOptimization:
          type: boolean
          description: 'A boolean value that, if true, indicates that the workgroup allocates additional compute resources
            to run automatic optimization operations. Default: false'
x-provenance:
  method: harvested
  publisher: Amazon Web Services
  source: https://raw.githubusercontent.com/aws/api-models-aws/3cd98287b471c106254abd89279cc87308d38bfd/models/redshift-serverless/service/2021-04-21/redshift-serverless-2021-04-21.json
  note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)