Amazon B2B Data Interchange Capabilities API

Manage EDI transformation capabilities

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

amazon-b2b-data-interchange-capabilities-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: AWS B2B Data Interchange Capabilities API
  description: AWS B2B Data Interchange automates the transformation and exchange of electronic data interchange (EDI) documents at cloud scale. It enables businesses to onboard trading partners, transform X12 EDI documents to and from JSON or XML, and manage capabilities, profiles, partnerships, and transformers with pay-as-you-go pricing.
  version: '2022-06-23'
  contact:
    url: https://aws.amazon.com/contact-us/
  termsOfService: https://aws.amazon.com/service-terms/
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
servers:
- url: https://b2bi.us-east-1.amazonaws.com
  description: US East (N. Virginia)
- url: https://b2bi.us-west-2.amazonaws.com
  description: US West (Oregon)
- url: https://b2bi.eu-west-1.amazonaws.com
  description: EU (Ireland)
security:
- aws_iam: []
tags:
- name: Capabilities
  description: Manage EDI transformation capabilities
paths:
  /capabilities:
    post:
      operationId: CreateCapability
      summary: Create Capability
      description: Instantiates a capability based on the specified parameters. A trading capability contains the information required to transform incoming EDI documents into JSON or XML outputs.
      tags:
      - Capabilities
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateCapabilityRequest'
      responses:
        '200':
          description: Capability created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateCapabilityResponse'
        '400':
          $ref: '#/components/responses/ValidationException'
        '403':
          $ref: '#/components/responses/AccessDeniedException'
        '409':
          $ref: '#/components/responses/ConflictException'
        '429':
          $ref: '#/components/responses/ThrottlingException'
        '500':
          $ref: '#/components/responses/InternalServerException'
    get:
      operationId: ListCapabilities
      summary: List Capabilities
      description: Lists the capabilities associated with your AWS account.
      tags:
      - Capabilities
      parameters:
      - name: maxResults
        in: query
        schema:
          type: integer
      - name: nextToken
        in: query
        schema:
          type: string
      responses:
        '200':
          description: List of capabilities returned successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListCapabilitiesResponse'
        '403':
          $ref: '#/components/responses/AccessDeniedException'
        '429':
          $ref: '#/components/responses/ThrottlingException'
        '500':
          $ref: '#/components/responses/InternalServerException'
  /capabilities/{capabilityId}:
    get:
      operationId: GetCapability
      summary: Get Capability
      description: Retrieves the details for the specified capability.
      tags:
      - Capabilities
      parameters:
      - name: capabilityId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Capability details returned successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CapabilitySummary'
        '404':
          $ref: '#/components/responses/ResourceNotFoundException'
        '403':
          $ref: '#/components/responses/AccessDeniedException'
        '429':
          $ref: '#/components/responses/ThrottlingException'
        '500':
          $ref: '#/components/responses/InternalServerException'
    patch:
      operationId: UpdateCapability
      summary: Update Capability
      description: Updates the specified parameters for a capability.
      tags:
      - Capabilities
      parameters:
      - name: capabilityId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateCapabilityRequest'
      responses:
        '200':
          description: Capability updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CapabilitySummary'
        '404':
          $ref: '#/components/responses/ResourceNotFoundException'
        '400':
          $ref: '#/components/responses/ValidationException'
        '429':
          $ref: '#/components/responses/ThrottlingException'
        '500':
          $ref: '#/components/responses/InternalServerException'
    delete:
      operationId: DeleteCapability
      summary: Delete Capability
      description: Deletes the specified capability. A capability must not be associated with any partnerships to be deleted.
      tags:
      - Capabilities
      parameters:
      - name: capabilityId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Capability deleted successfully
        '404':
          $ref: '#/components/responses/ResourceNotFoundException'
        '409':
          $ref: '#/components/responses/ConflictException'
        '429':
          $ref: '#/components/responses/ThrottlingException'
        '500':
          $ref: '#/components/responses/InternalServerException'
components:
  responses:
    ValidationException:
      description: The input fails to satisfy the constraints specified by an AWS service.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    ThrottlingException:
      description: The request was denied due to request throttling.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    InternalServerException:
      description: This exception is thrown when an error occurs in the AWS B2B Data Interchange service.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    ConflictException:
      description: A conflict exception is thrown when you attempt to delete a resource that is currently in use.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    ResourceNotFoundException:
      description: Occurs when the requested resource does not exist, or cannot be found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    AccessDeniedException:
      description: You do not have sufficient access to perform this action.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  schemas:
    X12Details:
      type: object
      properties:
        transactionSet:
          type: string
          description: X12 transaction set identifier (e.g., X12_110, X12_850)
        version:
          type: string
          description: X12 version (e.g., VERSION_4010, VERSION_5010)
    CapabilityConfiguration:
      type: object
      properties:
        edi:
          $ref: '#/components/schemas/EdiConfiguration'
    Tag:
      type: object
      properties:
        key:
          type: string
        value:
          type: string
      required:
      - key
      - value
    ListCapabilitiesResponse:
      type: object
      properties:
        capabilities:
          type: array
          items:
            $ref: '#/components/schemas/CapabilitySummary'
        nextToken:
          type: string
    ErrorResponse:
      type: object
      properties:
        message:
          type: string
        code:
          type: string
    CreateCapabilityRequest:
      type: object
      required:
      - name
      - type
      - configuration
      properties:
        name:
          type: string
        type:
          type: string
          enum:
          - edi
        configuration:
          $ref: '#/components/schemas/CapabilityConfiguration'
        instructionsDocuments:
          type: array
          items:
            $ref: '#/components/schemas/S3Location'
        clientToken:
          type: string
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
    UpdateCapabilityRequest:
      type: object
      properties:
        name:
          type: string
        configuration:
          $ref: '#/components/schemas/CapabilityConfiguration'
        instructionsDocuments:
          type: array
          items:
            $ref: '#/components/schemas/S3Location'
    CreateCapabilityResponse:
      type: object
      properties:
        capabilityId:
          type: string
        capabilityArn:
          type: string
        name:
          type: string
        type:
          type: string
        configuration:
          $ref: '#/components/schemas/CapabilityConfiguration'
        createdAt:
          type: string
          format: date-time
    EdiConfiguration:
      type: object
      properties:
        capabilityDirection:
          type: string
          enum:
          - INBOUND
          - OUTBOUND
        type:
          $ref: '#/components/schemas/EdiType'
        inputLocation:
          $ref: '#/components/schemas/S3Location'
        outputLocation:
          $ref: '#/components/schemas/S3Location'
        transformerId:
          type: string
    S3Location:
      type: object
      properties:
        bucketName:
          type: string
        key:
          type: string
    EdiType:
      type: object
      properties:
        x12Details:
          $ref: '#/components/schemas/X12Details'
    CapabilitySummary:
      type: object
      properties:
        capabilityId:
          type: string
        capabilityArn:
          type: string
        name:
          type: string
        type:
          type: string
        configuration:
          $ref: '#/components/schemas/CapabilityConfiguration'
        createdAt:
          type: string
          format: date-time
        modifiedAt:
          type: string
          format: date-time
  securitySchemes:
    aws_iam:
      type: apiKey
      in: header
      name: Authorization
      description: AWS Signature Version 4 authentication
externalDocs:
  description: AWS B2B Data Interchange API Reference
  url: https://docs.aws.amazon.com/b2bi/latest/APIReference/api-welcome.html