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