Amazon B2B Data Interchange Profiles API

Manage customer profiles representing private networks

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

amazon-b2b-data-interchange-profiles-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: AWS B2B Data Interchange Capabilities Profiles 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: Profiles
  description: Manage customer profiles representing private networks
paths:
  /profiles:
    post:
      operationId: CreateProfile
      summary: Create Profile
      description: Creates a customer profile. A profile is the system-side resource that represents your EDI sender or receiver entity. It stores your business name, email, phone, and logging configuration. You can create up to 5 profiles per account.
      tags:
      - Profiles
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateProfileRequest'
      responses:
        '200':
          description: Profile created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateProfileResponse'
        '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: ListProfiles
      summary: List Profiles
      description: Lists the profiles associated with your AWS account.
      tags:
      - Profiles
      parameters:
      - name: maxResults
        in: query
        schema:
          type: integer
      - name: nextToken
        in: query
        schema:
          type: string
      responses:
        '200':
          description: List of profiles returned successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListProfilesResponse'
        '403':
          $ref: '#/components/responses/AccessDeniedException'
        '429':
          $ref: '#/components/responses/ThrottlingException'
        '500':
          $ref: '#/components/responses/InternalServerException'
  /profiles/{profileId}:
    get:
      operationId: GetProfile
      summary: Get Profile
      description: Retrieves the details for the profile specified by the profile ID.
      tags:
      - Profiles
      parameters:
      - name: profileId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Profile details returned successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProfileSummary'
        '404':
          $ref: '#/components/responses/ResourceNotFoundException'
        '403':
          $ref: '#/components/responses/AccessDeniedException'
        '429':
          $ref: '#/components/responses/ThrottlingException'
        '500':
          $ref: '#/components/responses/InternalServerException'
    patch:
      operationId: UpdateProfile
      summary: Update Profile
      description: Updates the specified parameters for a profile.
      tags:
      - Profiles
      parameters:
      - name: profileId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateProfileRequest'
      responses:
        '200':
          description: Profile updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProfileSummary'
        '404':
          $ref: '#/components/responses/ResourceNotFoundException'
        '400':
          $ref: '#/components/responses/ValidationException'
        '429':
          $ref: '#/components/responses/ThrottlingException'
        '500':
          $ref: '#/components/responses/InternalServerException'
    delete:
      operationId: DeleteProfile
      summary: Delete Profile
      description: Deletes the specified profile. Profiles can only be deleted if no partnerships are associated with them.
      tags:
      - Profiles
      parameters:
      - name: profileId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Profile 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'
    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'
    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'
    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:
    CreateProfileRequest:
      type: object
      required:
      - name
      - phone
      - businessName
      - logging
      properties:
        name:
          type: string
        phone:
          type: string
        email:
          type: string
        businessName:
          type: string
        logging:
          type: string
          enum:
          - ENABLED
          - DISABLED
        clientToken:
          type: string
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
    Tag:
      type: object
      properties:
        key:
          type: string
        value:
          type: string
      required:
      - key
      - value
    CreateProfileResponse:
      type: object
      properties:
        profileId:
          type: string
        profileArn:
          type: string
        name:
          type: string
        businessName:
          type: string
        phone:
          type: string
        email:
          type: string
        logging:
          type: string
        logGroupName:
          type: string
        createdAt:
          type: string
          format: date-time
    ErrorResponse:
      type: object
      properties:
        message:
          type: string
        code:
          type: string
    ListProfilesResponse:
      type: object
      properties:
        profiles:
          type: array
          items:
            $ref: '#/components/schemas/ProfileSummary'
        nextToken:
          type: string
    ProfileSummary:
      type: object
      properties:
        profileId:
          type: string
        profileArn:
          type: string
        name:
          type: string
        businessName:
          type: string
        phone:
          type: string
        email:
          type: string
        logging:
          type: string
        logGroupName:
          type: string
        createdAt:
          type: string
          format: date-time
        modifiedAt:
          type: string
          format: date-time
    UpdateProfileRequest:
      type: object
      properties:
        name:
          type: string
        phone:
          type: string
        email:
          type: string
        businessName:
          type: string
  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