AT&T SIM Swap API
The SIM Swap API from AT&T — 2 operation(s) for sim swap.
The SIM Swap API from AT&T — 2 operation(s) for sim swap.
openapi: 3.0.3
info:
title: AT&T SIM Swap API
description: CAMARA-standard API that checks the connectivity status of user equipment, including roaming information. Enables applications to determine if a device is reachable, connected, and whether it is roaming on a partner network. Part of the AT&T Network API Accelerator Program.
version: '1.0'
contact:
url: https://devex-web.att.com/developer-hub/docs/network-api-accelerator-program
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/camara/sim-swap/v1
description: AT&T CAMARA SIM Swap API endpoint
tags:
- name: SIM Swap
paths:
/check:
post:
operationId: checkSimSwap
summary: AT&T Check SIM Swap
description: Check whether the SIM card associated with a mobile phone number has been swapped within a specified time period. Returns true/false indicating whether a SIM swap has been detected, optionally with the swap timestamp.
tags:
- SIM Swap
security:
- oauth2: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SimSwapCheckRequest'
examples:
CheckSimSwapRequestExample:
summary: Default checkSimSwap request
x-microcks-default: true
value:
phoneNumber: '+12125551234'
maxAge: 240
responses:
'200':
description: SIM swap check result
content:
application/json:
schema:
$ref: '#/components/schemas/SimSwapCheckResponse'
examples:
CheckSimSwap200Example:
summary: Default checkSimSwap 200 response
x-microcks-default: true
value:
swapped: false
'400':
description: Bad request - invalid phone number format or parameters
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorInfo'
'401':
description: Unauthorized - invalid or missing access token
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorInfo'
'403':
description: Forbidden - insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorInfo'
'404':
description: Phone number not found or not AT&T subscriber
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorInfo'
'429':
description: Too many requests - rate limit exceeded
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorInfo'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/retrieve-date:
post:
operationId: retrieveSimSwapDate
summary: AT&T Retrieve SIM Swap Date
description: Retrieve the date and time of the most recent SIM swap for a mobile phone number. Returns the timestamp of the last SIM card change or null if no recent swap has been detected.
tags:
- SIM Swap
security:
- oauth2: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SimSwapDateRequest'
examples:
RetrieveSimSwapDateRequestExample:
summary: Default retrieveSimSwapDate request
x-microcks-default: true
value:
phoneNumber: '+12125551234'
responses:
'200':
description: SIM swap date retrieved
content:
application/json:
schema:
$ref: '#/components/schemas/SimSwapDateResponse'
examples:
RetrieveSimSwapDate200Example:
summary: Default retrieveSimSwapDate 200 response
x-microcks-default: true
value:
latestSimChange: null
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorInfo'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorInfo'
'404':
description: Phone number not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorInfo'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
components:
schemas:
SimSwapDateRequest:
type: object
required:
- phoneNumber
properties:
phoneNumber:
type: string
description: Mobile phone number in E.164 format
example: '+12125551234'
SimSwapDateResponse:
type: object
properties:
latestSimChange:
type: string
format: date-time
nullable: true
description: Date and time of the most recent SIM swap, or null if no swap has been detected recently.
example: null
SimSwapCheckRequest:
type: object
required:
- phoneNumber
properties:
phoneNumber:
type: string
description: Mobile phone number in E.164 format associated with the SIM to check.
example: '+12125551234'
maxAge:
type: integer
description: Maximum age in hours to check for a SIM swap. If not provided, the default lookback period is used.
minimum: 1
maximum: 2400
example: 240
SimSwapCheckResponse:
type: object
properties:
swapped:
type: boolean
description: True if a SIM swap was detected within the maxAge period, false otherwise.
example: false
ErrorInfo:
type: object
properties:
status:
type: integer
description: HTTP status code
example: 400
code:
type: string
description: CAMARA error code
example: INVALID_ARGUMENT
message:
type: string
description: Human-readable error message
example: Invalid phone number format. Must be E.164.
securitySchemes:
oauth2:
type: oauth2
description: AT&T OAuth 2.0 for CAMARA network APIs
flows:
clientCredentials:
tokenUrl: https://api.att.com/oauth/v4/token
scopes: {}