AT&T Porting API

The Porting API from AT&T — 3 operation(s) for porting.

OpenAPI Specification

at-and-t-porting-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: AT&T In-App Messaging Authentication Porting API
  description: A messaging API enabling applications to send, receive, update, and delete MMS and SMS messages on behalf of AT&T users with explicit OAuth consent. Supports messages to phone numbers, short codes, and email addresses across AT&T and other carriers with full inbox management and delta synchronization.
  version: '2.0'
  contact:
    url: https://developer.att.com/support
  termsOfService: https://www.att.com/gen/general?pid=11561
  x-generated-from: documentation
  x-last-validated: '2026-04-19'
servers:
- url: https://api.att.com
  description: AT&T API Gateway
tags:
- name: Porting
paths:
  /portabilityOrder:
    post:
      operationId: createPortabilityOrder
      summary: AT&T Create Port Order
      description: Create a number portability order to port a subscriber's existing phone number to the AT&T MVNO network. Corresponds to TMF 689 Number Portability API.
      tags:
      - Porting
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PortabilityOrderCreate'
            examples:
              CreatePortabilityOrderRequestExample:
                summary: Default createPortabilityOrder request
                x-microcks-default: true
                value:
                  portabilityOrderItem:
                  - msisdn: '+12125551234'
                    portingType: FULL
                    currentCarrier: Verizon
      responses:
        '201':
          description: Port order successfully created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PortabilityOrder'
              examples:
                CreatePortabilityOrder201Example:
                  summary: Default createPortabilityOrder 201 response
                  x-microcks-default: true
                  value:
                    id: port-500123
                    href: https://devex-web.att.com/portabilityOrder/port-500123
                    state: inProgress
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    get:
      operationId: listPortabilityOrders
      summary: AT&T List Port Orders
      description: Retrieve a list of number portability orders. Supports filtering by state, date range, and subscriber. Corresponds to TMF 689 Number Portability API.
      tags:
      - Porting
      parameters:
      - name: state
        in: query
        required: false
        description: Filter by port order state
        schema:
          type: string
          enum:
          - inProgress
          - completed
          - cancelled
          - failed
          example: inProgress
      - name: limit
        in: query
        required: false
        description: Maximum number of records to return
        schema:
          type: integer
          example: 50
      - name: offset
        in: query
        required: false
        description: Pagination offset
        schema:
          type: integer
          example: 0
      responses:
        '200':
          description: Port orders successfully retrieved
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PortabilityOrder'
              examples:
                ListPortabilityOrders200Example:
                  summary: Default listPortabilityOrders 200 response
                  x-microcks-default: true
                  value:
                  - id: port-500123
                    href: https://devex-web.att.com/portabilityOrder/port-500123
                    state: completed
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /portabilityOrder/{id}:
    get:
      operationId: getPortabilityOrder
      summary: AT&T Get Port Order Status
      description: Retrieve the status and details of a specific number portability order. Corresponds to TMF 689 Number Portability API.
      tags:
      - Porting
      parameters:
      - name: id
        in: path
        required: true
        description: Port order ID
        schema:
          type: string
          example: port-500123
      responses:
        '200':
          description: Port order details retrieved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PortabilityOrder'
              examples:
                GetPortabilityOrder200Example:
                  summary: Default getPortabilityOrder 200 response
                  x-microcks-default: true
                  value:
                    id: port-500123
                    href: https://devex-web.att.com/portabilityOrder/port-500123
                    state: completed
                    portabilityOrderItem:
                    - msisdn: '+12125551234'
                      portingType: FULL
                      currentCarrier: Verizon
        '404':
          description: Port order not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    patch:
      operationId: updatePortabilityOrder
      summary: AT&T Update Port Order
      description: Update details of an in-progress number portability order. Corresponds to TMF 689 Number Portability API.
      tags:
      - Porting
      parameters:
      - name: id
        in: path
        required: true
        description: Port order ID
        schema:
          type: string
          example: port-500123
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PortabilityOrderUpdate'
            examples:
              UpdatePortabilityOrderRequestExample:
                summary: Default updatePortabilityOrder request
                x-microcks-default: true
                value:
                  requestedCompletionDate: '2026-04-25T00:00:00Z'
      responses:
        '200':
          description: Port order successfully updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PortabilityOrder'
              examples:
                UpdatePortabilityOrder200Example:
                  summary: Default updatePortabilityOrder 200 response
                  x-microcks-default: true
                  value:
                    id: port-500123
                    state: inProgress
                    requestedCompletionDate: '2026-04-25T00:00:00Z'
        '404':
          description: Port order not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /cancelPortabilityOrder:
    post:
      operationId: cancelPortabilityOrder
      summary: AT&T Cancel Port Order
      description: Cancel an in-progress number portability order. Corresponds to TMF 689 Number Portability API.
      tags:
      - Porting
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CancelPortabilityOrder'
            examples:
              CancelPortabilityOrderRequestExample:
                summary: Default cancelPortabilityOrder request
                x-microcks-default: true
                value:
                  portabilityOrder:
                    id: port-500123
                  cancellationReason: Customer request
      responses:
        '201':
          description: Port order cancellation submitted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PortabilityOrderCancellation'
              examples:
                CancelPortabilityOrder201Example:
                  summary: Default cancelPortabilityOrder 201 response
                  x-microcks-default: true
                  value:
                    id: cancel-500123
                    state: completed
                    portabilityOrder:
                      id: port-500123
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    PortabilityOrder:
      type: object
      properties:
        id:
          type: string
          description: Unique port order identifier
          example: port-500123
        href:
          type: string
          format: uri
          example: https://devex-web.att.com/portabilityOrder/port-500123
        state:
          type: string
          description: Port order state
          enum:
          - inProgress
          - completed
          - cancelled
          - failed
          example: inProgress
        requestedCompletionDate:
          type: string
          format: date-time
          description: Requested completion date for the port
          example: '2026-04-25T00:00:00Z'
    PortabilityOrderUpdate:
      type: object
      properties:
        requestedCompletionDate:
          type: string
          format: date-time
          description: Updated requested completion date
          example: '2026-04-25T00:00:00Z'
    PortabilityOrderCreate:
      type: object
      properties:
        portabilityOrderItem:
          type: array
          items:
            type: object
            properties:
              msisdn:
                type: string
                description: Phone number to port
                example: '+12125551234'
              portingType:
                type: string
                enum:
                - FULL
                - PARTIAL
                example: FULL
              currentCarrier:
                type: string
                description: Current carrier name
                example: Verizon
    CancelPortabilityOrder:
      type: object
      properties:
        portabilityOrder:
          type: object
          properties:
            id:
              type: string
              description: Port order ID to cancel
              example: port-500123
        cancellationReason:
          type: string
          description: Reason for cancellation
          example: Customer request
    ErrorResponse:
      type: object
      properties:
        code:
          type: string
          description: Error code
          example: '400'
        reason:
          type: string
          description: Short reason for the error
          example: Bad Request
        message:
          type: string
          description: Detailed error message
          example: Invalid input parameter value
        status:
          type: string
          description: HTTP status code
          example: '400'
    PortabilityOrderCancellation:
      type: object
      properties:
        id:
          type: string
          description: Cancellation record ID
          example: cancel-500123
        state:
          type: string
          description: Cancellation state
          example: completed
        portabilityOrder:
          type: object
          properties:
            id:
              type: string
              example: port-500123
  securitySchemes:
    oauth2:
      type: oauth2
      description: AT&T OAuth 2.0 with user consent via authorization code flow
      flows:
        authorizationCode:
          authorizationUrl: https://api.att.com/oauth/v4/authorize
          tokenUrl: https://api.att.com/oauth/v4/token
          scopes:
            IMMN: Send Message - send MMS and SMS messages on behalf of user
            MIM: Message Inbox Management - read, update, and delete messages