Amazon Connect Contact Flows API

Operations for managing contact flows

Operations 5

PUT /phone-number/{PhoneNumberId}/contact-flow Associate Phone Number Contact Flow #
DELETE /phone-number/{PhoneNumberId}/contact-flow Disassociate Phone Number Contact Flow #
PUT /contact-flows/{InstanceId} Create Contact Flow #
DELETE /contact-flows/{InstanceId}/{ContactFlowId} Delete Contact Flow #
GET /contact-flows/{InstanceId}/{ContactFlowId} Describe Contact Flow #

Documentation

Specifications

Schemas & Data

Other Resources

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-connect:amazon-connect-contact-flows-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-connect-contact-flows-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Amazon Connect Service Contact Flows API
  version: '2017-08-08'
  description: Generated from AWS's published Smithy model for Amazon Connect Service. 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://connect.{region}.amazonaws.com
  variables:
    region:
      default: us-east-1
security:
- sigv4: []
paths:
  /phone-number/{PhoneNumberId}/contact-flow:
    put:
      operationId: AssociatePhoneNumberContactFlow
      summary: Associate Phone Number Contact Flow
      description: Associates a flow with a phone number claimed to your Connect Customer instance. If the number is claimed
        to a traffic distribution group, and you are calling this API using an instance in the Amazon Web Services Region
        where the traffic distribution group was created, you can use either a full phone number ARN or UUID value for the
        PhoneNumberId URI request parameter. However, if the number is claimed to a traffic distribution group and you are
        calling this API using an instance in the alternate Amazon Web Services Region associated with the traffic distribution
        group, you must provide a full phone number ARN. If a UUID is provided in this scenario, you will receive a ResourceNotFoundException.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: string
        '403':
          description: AccessDeniedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedException'
        '500':
          description: InternalServiceException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServiceException'
        '400':
          description: InvalidParameterException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidParameterException'
        '404':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
        '429':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AssociatePhoneNumberContactFlowRequest'
      tags:
      - Contact Flows
    delete:
      operationId: DisassociatePhoneNumberContactFlow
      summary: Disassociate Phone Number Contact Flow
      description: Removes the flow association from a phone number claimed to your Connect Customer instance. If the number
        is claimed to a traffic distribution group, and you are calling this API using an instance in the Amazon Web Services
        Region where the traffic distribution group was created, you can use either a full phone number ARN or UUID value
        for the PhoneNumberId URI request parameter. However, if the number is claimed to a traffic distribution group and
        you are calling this API using an instance in the alternate Amazon Web Services Region associated with the traffic
        distribution group, you must provide a full phone number ARN. If a UUID is provided in this scenario, you will receive
        a ResourceNotFoundException.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: string
        '403':
          description: AccessDeniedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedException'
        '500':
          description: InternalServiceException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServiceException'
        '400':
          description: InvalidParameterException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidParameterException'
        '404':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
        '429':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DisassociatePhoneNumberContactFlowRequest'
      tags:
      - Contact Flows
  /contact-flows/{InstanceId}:
    put:
      operationId: CreateContactFlow
      summary: Create Contact Flow
      description: Creates a flow for the specified Connect Customer instance. You can also create and update flows using
        the Connect Customer Flow language.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateContactFlowResponse'
        '409':
          description: DuplicateResourceException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DuplicateResourceException'
        '500':
          description: InternalServiceException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServiceException'
        '400':
          description: InvalidContactFlowException; InvalidParameterException; InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidContactFlowException'
        '429':
          description: LimitExceededException; ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LimitExceededException'
        '404':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateContactFlowRequest'
      tags:
      - Contact Flows
  /contact-flows/{InstanceId}/{ContactFlowId}:
    delete:
      operationId: DeleteContactFlow
      summary: Delete Contact Flow
      description: Deletes a flow for the specified Connect Customer instance.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteContactFlowResponse'
        '403':
          description: AccessDeniedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedException'
        '500':
          description: InternalServiceException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServiceException'
        '400':
          description: InvalidParameterException; InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidParameterException'
        '404':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
        '429':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteContactFlowRequest'
      tags:
      - Contact Flows
    get:
      operationId: DescribeContactFlow
      summary: Describe Contact Flow
      description: Describes the specified flow. You can also create and update flows using the Connect Customer Flow language.
        Use the $SAVED alias in the request to describe the SAVED content of a Flow. For example, arn:aws:.../contact-flow/{id}:$SAVED.
        After a flow is published, $SAVED needs to be supplied to view saved content that has not been published. Use arn:aws:.../contact-flow/{id}:{version}
        to retrieve the content of a specific flow version. In the response, Status indicates the flow status as either SAVED
        or PUBLISHED. The PUBLISHED status will initiate validation on the content. SAVED does not initiate validation of
        the content. SAVED | PUBLISHED
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DescribeContactFlowResponse'
        '404':
          description: ContactFlowNotPublishedException; ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContactFlowNotPublishedException'
        '500':
          description: InternalServiceException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServiceException'
        '400':
          description: InvalidParameterException; InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidParameterException'
        '429':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DescribeContactFlowRequest'
      tags:
      - Contact Flows
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: connect
  schemas:
    AccessDeniedException:
      type: object
      properties:
        Message:
          type: string
    AssociatePhoneNumberContactFlowRequest:
      type: object
      properties:
        PhoneNumberId:
          type: string
          description: A unique identifier for the phone number.
        InstanceId:
          type: string
          description: The identifier of the Connect Customer instance. You can find the instance ID in the Amazon Resource
            Name (ARN) of the instance.
        ContactFlowId:
          type: string
          description: The identifier of the flow.
      required:
      - PhoneNumberId
      - InstanceId
      - ContactFlowId
    ContactFlow:
      type: object
      properties:
        Arn:
          type: string
          description: The Amazon Resource Name (ARN) of the flow.
        Id:
          type: string
          description: The identifier of the flow.
        Name:
          type: string
          description: The name of the flow.
        Type:
          type: string
          enum:
          - CONTACT_FLOW
          - CUSTOMER_QUEUE
          - CUSTOMER_HOLD
          - CUSTOMER_WHISPER
          - AGENT_HOLD
          - AGENT_WHISPER
          - OUTBOUND_WHISPER
          - AGENT_TRANSFER
          - QUEUE_TRANSFER
          - CAMPAIGN
          description: The type of the flow. For descriptions of the available types, see Choose a flow type in the Connect
            Customer Administrator Guide.
        State:
          type: string
          enum:
          - ACTIVE
          - ARCHIVED
          description: The type of flow.
        Status:
          type: string
          enum:
          - PUBLISHED
          - SAVED
          description: The status of the flow.
        Description:
          type: string
          description: The description of the flow.
        Content:
          type: string
          description: 'The JSON string that represents the content of the flow. For an example, see Example flow in Connect
            Customer Flow language. Length Constraints: Minimum length of 1. Maximum length of 256000.'
        Tags:
          type: object
          additionalProperties:
            type: string
          description: 'The tags used to organize, track, or control access for this resource. For example, { "Tags": {"key1":"value1",
            "key2":"value2"} }.'
        FlowContentSha256:
          type: string
          description: Indicates the checksum value of the flow content.
        Version:
          type: integer
          description: The identifier of the flow version.
        VersionDescription:
          type: string
          description: The description of the flow version.
        LastModifiedTime:
          type: string
          format: date-time
          description: The time at which the flow was last modified.
        LastModifiedRegion:
          type: string
          description: The region in which the flow was last modified
    ContactFlowNotPublishedException:
      type: object
      properties:
        Message:
          type: string
    CreateContactFlowRequest:
      type: object
      properties:
        InstanceId:
          type: string
          description: The identifier of the Connect Customer instance.
        Name:
          type: string
          description: The name of the flow.
        Type:
          type: string
          enum:
          - CONTACT_FLOW
          - CUSTOMER_QUEUE
          - CUSTOMER_HOLD
          - CUSTOMER_WHISPER
          - AGENT_HOLD
          - AGENT_WHISPER
          - OUTBOUND_WHISPER
          - AGENT_TRANSFER
          - QUEUE_TRANSFER
          - CAMPAIGN
          description: The type of the flow. For descriptions of the available types, see Choose a flow type in the Connect
            Customer Administrator Guide.
        Description:
          type: string
          description: The description of the flow.
        Content:
          type: string
          description: 'The JSON string that represents the content of the flow. For an example, see Example flow in Connect
            Customer Flow language. Length Constraints: Minimum length of 1. Maximum length of 256000.'
        Status:
          type: string
          enum:
          - PUBLISHED
          - SAVED
          description: Indicates the flow status as either SAVED or PUBLISHED. The PUBLISHED status will initiate validation
            on the content. the SAVED status does not initiate validation of the content. SAVED | PUBLISHED.
        Tags:
          type: object
          additionalProperties:
            type: string
          description: 'The tags used to organize, track, or control access for this resource. For example, { "Tags": {"key1":"value1",
            "key2":"value2"} }.'
      required:
      - InstanceId
      - Name
      - Type
      - Content
    CreateContactFlowResponse:
      type: object
      properties:
        ContactFlowId:
          type: string
          description: The identifier of the flow.
        ContactFlowArn:
          type: string
          description: The Amazon Resource Name (ARN) of the flow.
        FlowContentSha256:
          type: string
          description: Indicates the checksum value of the latest published flow content.
    DeleteContactFlowRequest:
      type: object
      properties:
        InstanceId:
          type: string
          description: The identifier of the Connect Customer instance. You can find the instance ID in the Amazon Resource
            Name (ARN) of the instance.
        ContactFlowId:
          type: string
          description: The identifier of the flow.
      required:
      - InstanceId
      - ContactFlowId
    DeleteContactFlowResponse:
      type: object
      properties: {}
    DescribeContactFlowRequest:
      type: object
      properties:
        InstanceId:
          type: string
          description: The identifier of the Connect Customer instance.
        ContactFlowId:
          type: string
          description: The identifier of the flow.
      required:
      - InstanceId
      - ContactFlowId
    DescribeContactFlowResponse:
      type: object
      properties:
        ContactFlow:
          $ref: '#/components/schemas/ContactFlow'
    DisassociatePhoneNumberContactFlowRequest:
      type: object
      properties:
        PhoneNumberId:
          type: string
          description: A unique identifier for the phone number.
        InstanceId:
          type: string
          description: The identifier of the Connect Customer instance. You can find the instance ID in the Amazon Resource
            Name (ARN) of the instance.
      required:
      - PhoneNumberId
      - InstanceId
    DuplicateResourceException:
      type: object
      properties:
        Message:
          type: string
    InternalServiceException:
      type: object
      properties:
        Message:
          type: string
          description: The message.
    InvalidContactFlowException:
      type: object
      properties:
        problems:
          type: array
          items:
            $ref: '#/components/schemas/ProblemDetail'
          description: The problems with the flow. Please fix before trying again.
    InvalidParameterException:
      type: object
      properties:
        Message:
          type: string
          description: The message about the parameters.
    LimitExceededException:
      type: object
      properties:
        Message:
          type: string
          description: The message about the limit.
    ProblemDetail:
      type: object
      properties:
        message:
          type: string
          description: The problem detail's message.
    ResourceNotFoundException:
      type: object
      properties:
        Message:
          type: string
          description: The message about the resource.
    ThrottlingException:
      type: object
      properties:
        Message:
          type: string
x-provenance:
  method: harvested
  publisher: Amazon Web Services
  source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/connect/service/2017-08-08/connect-2017-08-08.json
  note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)