These endpoints are carrier-specific and only available when the active carrier supports them. If the current carrier doesn't support an operation, the API returns 501 Not Supported.
Currently, these operations are supported by 321 Communications only.
Query Available Plans
Get all available plan SOC codes from the carrier.
Endpoint: GET /sim/plans/available/
Rate Limit: 30 requests/minute
Response Example
{
"status": "success",
"mdn": null,
"sim": null,
"transaction_id": "20260806.a3f2b1",
"message": "SUCCESS"
}
Validate E911 Address
Pre-validate an address before using it for activation or Wi-Fi Calling.
Endpoint: POST /sim/address/validate/
Rate Limit: 30 requests/minute
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
street1 |
string | Yes | Street address |
city |
string | Yes | City |
state |
string | Yes | Two-letter state code |
zip_code |
string | Yes | 5-digit or ZIP+4 |
Request Example
Check Device Unlock Status
Check whether a device is unlocked and eligible for use on the network.
Endpoint: GET /sim/device/unlock-status/{imei}
Rate Limit: 30 requests/minute
| Parameter | Location | Type | Required | Description |
|---|---|---|---|---|
imei |
Path | string | Yes | 15-digit IMEI |
Query Account Info
Returns multi-line account information for a subscriber.
Endpoint: GET /sim/account/{mdn}
Rate Limit: 30 requests/minute
| Parameter | Location | Type | Required | Description |
|---|---|---|---|---|
mdn |
Path | string | Yes | 10-digit MDN |
Query Pool Usage
Returns shared data pool usage across all lines on an account.
Endpoint: GET /sim/pool-usage/{account_id}
Rate Limit: 30 requests/minute
| Parameter | Location | Type | Required | Description |
|---|---|---|---|---|
account_id |
Path | string | Yes | Account identifier |
NGP Inquiry (Available Numbers)
Returns available number groups for a ZIP code. Used when assigning a new number during activation or MDN swap.
Endpoint: GET /sim/ngp/{zip_code}
Rate Limit: 30 requests/minute
| Parameter | Location | Type | Required | Description |
|---|---|---|---|---|
zip_code |
Path | string | Yes | 5-digit ZIP code |
Get Active Plan
Returns the current active plan SOC for a subscriber.
Endpoint: GET /sim/plan/active/{mdn}
Rate Limit: 30 requests/minute
| Parameter | Location | Type | Required | Description |
|---|---|---|---|---|
mdn |
Path | string | Yes | 10-digit MDN |
Query IMEI Details
Returns device details by IMEI number.
Endpoint: GET /sim/imei/{imei}
Rate Limit: 30 requests/minute
| Parameter | Location | Type | Required | Description |
|---|---|---|---|---|
imei |
Path | string | Yes | 15-digit IMEI |
Query Active Products/Features
Returns all active feature SOCs on a subscriber line.
Endpoint: GET /sim/products/{mdn}
Rate Limit: 30 requests/minute
| Parameter | Location | Type | Required | Description |
|---|---|---|---|---|
mdn |
Path | string | Yes | 10-digit MDN |
Customer Impacting Messages (CIM)
Returns network outages and customer-impacting events.
Endpoint: GET /sim/cim/
Rate Limit: 10 requests/minute
| Parameter | Location | Type | Required | Description |
|---|---|---|---|---|
start_time |
Query | string | No | Filter start time |
end_time |
Query | string | No | Filter end time |
Send SMS
Send a text message to a subscriber on the network.
Endpoint: POST /sim/sms/send/
Rate Limit: 10 requests/minute
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
mdn |
string | Yes | 10-digit recipient MDN |
message |
string | Yes | Message text (max 160 chars) |
transaction_id |
string | No | Unique ID for idempotency |
Request Example
Manage Phone List
Add or remove numbers from call blocking or forwarding lists.
Endpoint: POST /sim/phone-list/manage/
Rate Limit: 20 requests/minute
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
mdn |
string | Yes | 10-digit subscriber MDN |
action |
string | Yes | Action: add, remove, block, unblock |
numbers |
array | Yes | List of phone numbers to manage |
transaction_id |
string | No | Unique ID for idempotency |
Request Example
Update Subscriber Label
Set a display name/label for a subscriber line.
Endpoint: PATCH /sim/label/{mdn}
Rate Limit: 20 requests/minute
| Parameter | Location | Type | Required | Description |
|---|---|---|---|---|
mdn |
Path | string | Yes | 10-digit MDN |
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
mdn |
string | Yes | 10-digit MDN |
label |
string | Yes | New label (max 100 chars) |
transaction_id |
string | No | Unique ID for idempotency |
Request Example
Change IMEI (Device Swap)
Swap the device (IMEI) on a line without changing the SIM card.
Endpoint: POST /sim/imei/change/
Rate Limit: 20 requests/minute
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
mdn |
string | Yes | 10-digit MDN |
sim |
string | Yes | Current SIM ICCID |
new_imei |
string | Yes | New device IMEI (15 digits) |
transaction_id |
string | No | Unique ID for idempotency |
Request Example
Error: Operation Not Supported
If the current carrier doesn't support an extended operation: