AWS Redshift #X Amz Target=RedshiftData.ExecuteStatement API

The #X Amz Target=RedshiftData.ExecuteStatement API from AWS Redshift — 1 operation(s) for #x amz target=redshiftdata.executestatement.

OpenAPI Specification

aws-redshift-x-amz-target-redshiftdata-executestatement-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: '2019-12-20'
  x-release: v4
  title: 'Redshift Data API Service #Action=AcceptReservedNodeExchange #Action=AcceptReservedNodeExchange #X Amz Target=RedshiftData.ExecuteStatement API'
  description: <p>You can use the Amazon Redshift Data API to run queries on Amazon Redshift tables. You can run SQL statements, which are committed if the statement succeeds. </p> <p>For more information about the Amazon Redshift Data API and CLI usage examples, see <a href="https://docs.aws.amazon.com/redshift/latest/mgmt/data-api.html">Using the Amazon Redshift Data API</a> in the <i>Amazon Redshift Management Guide</i>. </p>
  x-logo:
    url: https://api.apis.guru/v2/cache/logo/https_twitter.com_awscloud_profile_image.png
    backgroundColor: '#FFFFFF'
  termsOfService: https://aws.amazon.com/service-terms/
  contact:
    name: Mike Ralphson
    email: mike.ralphson@gmail.com
    url: https://github.com/mermade/aws2openapi
    x-twitter: PermittedSoc
  license:
    name: Apache 2.0 License
    url: http://www.apache.org/licenses/
  x-providerName: amazonaws.com
  x-serviceName: redshift-data
  x-aws-signingName: redshift-data
  x-origin:
  - contentType: application/json
    url: https://raw.githubusercontent.com/aws/aws-sdk-js/master/apis/redshift-data-2019-12-20.normal.json
    converter:
      url: https://github.com/mermade/aws2openapi
      version: 1.0.0
    x-apisguru-driver: external
  x-apiClientRegistration:
    url: https://portal.aws.amazon.com/gp/aws/developer/registration/index.html?nc2=h_ct
  x-apisguru-categories:
  - cloud
  x-preferred: true
servers:
- url: http://redshift-data.{region}.amazonaws.com
  variables:
    region:
      description: The AWS region
      enum:
      - us-east-1
      - us-east-2
      - us-west-1
      - us-west-2
      - us-gov-west-1
      - us-gov-east-1
      - ca-central-1
      - eu-north-1
      - eu-west-1
      - eu-west-2
      - eu-west-3
      - eu-central-1
      - eu-south-1
      - af-south-1
      - ap-northeast-1
      - ap-northeast-2
      - ap-northeast-3
      - ap-southeast-1
      - ap-southeast-2
      - ap-east-1
      - ap-south-1
      - sa-east-1
      - me-south-1
      default: us-east-1
  description: The Redshift Data API Service multi-region endpoint
- url: https://redshift-data.{region}.amazonaws.com
  variables:
    region:
      description: The AWS region
      enum:
      - us-east-1
      - us-east-2
      - us-west-1
      - us-west-2
      - us-gov-west-1
      - us-gov-east-1
      - ca-central-1
      - eu-north-1
      - eu-west-1
      - eu-west-2
      - eu-west-3
      - eu-central-1
      - eu-south-1
      - af-south-1
      - ap-northeast-1
      - ap-northeast-2
      - ap-northeast-3
      - ap-southeast-1
      - ap-southeast-2
      - ap-east-1
      - ap-south-1
      - sa-east-1
      - me-south-1
      default: us-east-1
  description: The Redshift Data API Service multi-region endpoint
- url: http://redshift-data.{region}.amazonaws.com.cn
  variables:
    region:
      description: The AWS region
      enum:
      - cn-north-1
      - cn-northwest-1
      default: cn-north-1
  description: The Redshift Data API Service endpoint for China (Beijing) and China (Ningxia)
- url: https://redshift-data.{region}.amazonaws.com.cn
  variables:
    region:
      description: The AWS region
      enum:
      - cn-north-1
      - cn-northwest-1
      default: cn-north-1
  description: The Redshift Data API Service endpoint for China (Beijing) and China (Ningxia)
security:
- hmac: []
tags:
- name: '#X Amz Target=RedshiftData.ExecuteStatement'
paths:
  /#X-Amz-Target=RedshiftData.ExecuteStatement:
    parameters:
    - $ref: '#/components/parameters/X-Amz-Content-Sha256'
    - $ref: '#/components/parameters/X-Amz-Date'
    - $ref: '#/components/parameters/X-Amz-Algorithm'
    - $ref: '#/components/parameters/X-Amz-Credential'
    - $ref: '#/components/parameters/X-Amz-Security-Token'
    - $ref: '#/components/parameters/X-Amz-Signature'
    - $ref: '#/components/parameters/X-Amz-SignedHeaders'
    post:
      operationId: ExecuteStatement
      description: '<p>Runs an SQL statement, which can be data manipulation language (DML) or data definition language (DDL). This statement must be a single SQL statement. Depending on the authorization method, use one of the following combinations of request parameters: </p> <ul> <li> <p>Secrets Manager - when connecting to a cluster, provide the <code>secret-arn</code> of a secret stored in Secrets Manager which has <code>username</code> and <code>password</code>. The specified secret contains credentials to connect to the <code>database</code> you specify. When you are connecting to a cluster, you also supply the database name, If you provide a cluster identifier (<code>dbClusterIdentifier</code>), it must match the cluster identifier stored in the secret. When you are connecting to a serverless workgroup, you also supply the database name.</p> </li> <li> <p>Temporary credentials - when connecting to your data warehouse, choose one of the following options:</p> <ul> <li> <p>When connecting to a serverless workgroup, specify the workgroup name and database name. The database user name is derived from the IAM identity. For example, <code>arn:iam::123456789012:user:foo</code> has the database user name <code>IAM:foo</code>. Also, permission to call the <code>redshift-serverless:GetCredentials</code> operation is required.</p> </li> <li> <p>When connecting to a cluster as an IAM identity, specify the cluster identifier and the database name. The database user name is derived from the IAM identity. For example, <code>arn:iam::123456789012:user:foo</code> has the database user name <code>IAM:foo</code>. Also, permission to call the <code>redshift:GetClusterCredentialsWithIAM</code> operation is required.</p> </li> <li> <p>When connecting to a cluster as a database user, specify the cluster identifier, the database name, and the database user name. Also, permission to call the <code>redshift:GetClusterCredentials</code> operation is required.</p> </li> </ul> </li> </ul> <p>For more information about the Amazon Redshift Data API and CLI usage examples, see <a href="https://docs.aws.amazon.com/redshift/latest/mgmt/data-api.html">Using the Amazon Redshift Data API</a> in the <i>Amazon Redshift Management Guide</i>. </p>'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExecuteStatementOutput'
        '480':
          description: ValidationException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationException'
        '481':
          description: ExecuteStatementException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExecuteStatementException'
        '482':
          description: ActiveStatementsExceededException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActiveStatementsExceededException'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExecuteStatementInput'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - RedshiftData.ExecuteStatement
      summary: Amazon Redshift Data - Execute Statement
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - '#X Amz Target=RedshiftData.ExecuteStatement'
components:
  parameters:
    X-Amz-Credential:
      name: X-Amz-Credential
      in: header
      schema:
        type: string
      required: false
    X-Amz-Security-Token:
      name: X-Amz-Security-Token
      in: header
      schema:
        type: string
      required: false
    X-Amz-Date:
      name: X-Amz-Date
      in: header
      schema:
        type: string
      required: false
    X-Amz-Algorithm:
      name: X-Amz-Algorithm
      in: header
      schema:
        type: string
      required: false
    X-Amz-SignedHeaders:
      name: X-Amz-SignedHeaders
      in: header
      schema:
        type: string
      required: false
    X-Amz-Content-Sha256:
      name: X-Amz-Content-Sha256
      in: header
      schema:
        type: string
      required: false
    X-Amz-Signature:
      name: X-Amz-Signature
      in: header
      schema:
        type: string
      required: false
  schemas:
    ActiveStatementsExceededException: {}
    ParameterName:
      type: string
      pattern: ^[0-9a-zA-Z_]+$
    WorkgroupNameString:
      type: string
      pattern: ^(([a-z0-9-]+)|(arn:(aws(-[a-z]+)*):redshift-serverless:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:workgroup/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}))$
      minLength: 3
      maxLength: 128
    ParameterValue:
      type: string
      minLength: 1
    String:
      type: string
    StatementNameString:
      type: string
      minLength: 0
      maxLength: 500
    StatementString:
      type: string
    ExecuteStatementOutput:
      type: object
      properties:
        ClusterIdentifier:
          allOf:
          - $ref: '#/components/schemas/Location'
          - description: 'The cluster identifier. This element is not returned when connecting to a serverless workgroup. '
        CreatedAt:
          allOf:
          - $ref: '#/components/schemas/Timestamp'
          - description: 'The date and time (UTC) the statement was created. '
        Database:
          allOf:
          - $ref: '#/components/schemas/String'
          - description: The name of the database.
        DbUser:
          allOf:
          - $ref: '#/components/schemas/String'
          - description: The database user name.
        Id:
          allOf:
          - $ref: '#/components/schemas/StatementId'
          - description: 'The identifier of the SQL statement whose results are to be fetched. This value is a universally unique identifier (UUID) generated by Amazon Redshift Data API. '
        SecretArn:
          allOf:
          - $ref: '#/components/schemas/SecretArn'
          - description: 'The name or ARN of the secret that enables access to the database. '
        WorkgroupName:
          allOf:
          - $ref: '#/components/schemas/WorkgroupNameString'
          - description: The serverless workgroup name or Amazon Resource Name (ARN). This element is not returned when connecting to a provisioned cluster.
    Location:
      type: string
    StatementId:
      type: string
      pattern: ^[a-z0-9]{8}(-[a-z0-9]{4}){3}-[a-z0-9]{12}(:\d+)?$
    SqlParameter:
      type: object
      required:
      - name
      - value
      properties:
        name:
          allOf:
          - $ref: '#/components/schemas/ParameterName'
          - description: The name of the parameter.
        value:
          allOf:
          - $ref: '#/components/schemas/ParameterValue'
          - description: 'The value of the parameter. Amazon Redshift implicitly converts to the proper data type. For more information, see <a href="https://docs.aws.amazon.com/redshift/latest/dg/c_Supported_data_types.html">Data types</a> in the <i>Amazon Redshift Database Developer Guide</i>. '
      description: A parameter used in a SQL statement.
    SecretArn:
      type: string
    SqlParametersList:
      type: array
      items:
        $ref: '#/components/schemas/SqlParameter'
      minItems: 1
    ExecuteStatementInput:
      type: object
      required:
      - Database
      - Sql
      title: ExecuteStatementInput
      properties:
        ClientToken:
          allOf:
          - $ref: '#/components/schemas/ClientToken'
          - description: A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
        ClusterIdentifier:
          allOf:
          - $ref: '#/components/schemas/Location'
          - description: 'The cluster identifier. This parameter is required when connecting to a cluster and authenticating using either Secrets Manager or temporary credentials. '
        Database:
          allOf:
          - $ref: '#/components/schemas/String'
          - description: 'The name of the database. This parameter is required when authenticating using either Secrets Manager or temporary credentials. '
        DbUser:
          allOf:
          - $ref: '#/components/schemas/String'
          - description: 'The database user name. This parameter is required when connecting to a cluster as a database user and authenticating using temporary credentials. '
        Parameters:
          allOf:
          - $ref: '#/components/schemas/SqlParametersList'
          - description: The parameters for the SQL statement.
        SecretArn:
          allOf:
          - $ref: '#/components/schemas/SecretArn'
          - description: 'The name or ARN of the secret that enables access to the database. This parameter is required when authenticating using Secrets Manager. '
        Sql:
          allOf:
          - $ref: '#/components/schemas/StatementString'
          - description: 'The SQL statement text to run. '
        StatementName:
          allOf:
          - $ref: '#/components/schemas/StatementNameString'
          - description: 'The name of the SQL statement. You can name the SQL statement when you create it to identify the query. '
        WithEvent:
          allOf:
          - $ref: '#/components/schemas/Boolean'
          - description: 'A value that indicates whether to send an event to the Amazon EventBridge event bus after the SQL statement runs. '
        WorkgroupName:
          allOf:
          - $ref: '#/components/schemas/WorkgroupNameString'
          - description: The serverless workgroup name or Amazon Resource Name (ARN). This parameter is required when connecting to a serverless workgroup and authenticating using either Secrets Manager or temporary credentials.
    ExecuteStatementException: {}
    Boolean:
      type: boolean
    ClientToken:
      type: string
      minLength: 1
      maxLength: 64
    ValidationException: {}
    Timestamp:
      type: string
      format: date-time
  securitySchemes:
    hmac:
      type: apiKey
      name: Authorization
      in: header
      description: Amazon Signature authorization v4
      x-amazon-apigateway-authtype: awsSigv4
externalDocs:
  description: Amazon Web Services documentation
  url: https://docs.aws.amazon.com/redshift-data/
x-hasEquivalentPaths: true