maskproxy.
DEVELOPERS / ACCOUNT API

An API for your account.

Available before subscribing. Manage all your account resources with the permissions you choose.

Manage account keys →

Authentication & permissions

Create a key from API & integrations. Choose full control, read-only or custom permissions. It grants no access to other accounts or server administration. Linking phones and creating connections still require the appropriate subscription and permissions.

GET /api/account/v1/account
Authorization: Bearer YOUR_ACCOUNT_API_KEY
Accept: application/json

The key is shown once; only its digest is stored. Revoke it at any time. Changing the account password or email invalidates existing account keys. Limits: 120 requests per minute per key and 20 active keys per account.

Subscribe, then link

Get plans and receiving wallets from GET /billing. Create an order for a new phone, then submit the transaction ID for manual review. After approval, pass the subscription device_id as subscription_id to link the phone. Submitting a transaction ID alone does not activate service.

POST /api/account/v1/billing/orders
{"device_id":"new","phone_name":"US phone","plan_id":"plus",
 "wallet_id":"YOUR_CONFIGURED_WALLET_ID","idempotency_key":"YOUR_UNIQUE_CHECKOUT_ID"}

POST /api/account/v1/create
{"subscription_id":"APPROVED_SUBSCRIPTION_DEVICE_ID","name":"US phone","relay_id":"AVAILABLE_RELAY_ID"}

The account key is independent of phone keys. A phone key covers one phone and is issued after its subscription is active. Phone keys grant no billing access.

Phone API documentation →

Your account operations

Endpoints and request bodies follow the same rules as the user workspace. Use a unique idempotency key for checkout and a client_id for messages. Email and password changes require the current password; a new email still requires verification. Account keys are managed through the dashboard and cannot issue other account keys.

RequestالمسارRequired permission
GET/api/account/v1/support/threadsaccount:read
POST/api/account/v1/support/threadssupport:write
GET/api/account/v1/support/threads/{tid}account:read
POST/api/account/v1/support/threads/{tid}/messagessupport:write
POST/api/account/v1/support/threads/{tid}/readsupport:write
PATCH/api/account/v1/support/threads/{tid}support:write
POST/api/account/v1/support/presencesupport:write
GET/api/account/v1/billingaccount:read
POST/api/account/v1/billing/ordersbilling:write
GET/api/account/v1/billing/ordersaccount:read
POST/api/account/v1/billing/slots/{did}/archivebilling:write
GET/api/account/v1/billing/orders/{oid}account:read
GET/api/account/v1/billing/orders/{oid}/receiptaccount:read
POST/api/account/v1/billing/orders/{oid}/submitbilling:write
POST/api/account/v1/billing/orders/{oid}/cancelbilling:write
POST/api/account/v1/passwordaccount:write
GET/api/account/v1/accountaccount:read
POST/api/account/v1/email/sendaccount:write
POST/api/account/v1/email/verifyaccount:write
PATCH/api/account/v1/account/emailaccount:write
GET/api/account/v1/relaysaccount:read
GET/api/account/v1/devicesaccount:read
POST/api/account/v1/createphones:write
POST/api/account/v1/devices/{device_id}/recover-enrollmentphones:write
GET/api/account/v1/qr/{device_id}phones:write
POST/api/account/v1/devices/{device_id}/pairing-codephones:write
DELETE/api/account/v1/delete/{device_id}phones:write
POST/api/account/v1/config/{device_id}phones:write
GET/api/account/v1/devices/{device_id}/rotation-linksaccount:read
POST/api/account/v1/devices/{device_id}/rotation-linksphones:write
DELETE/api/account/v1/devices/{device_id}/rotation-links/{link_id}phones:write
GET/api/account/v1/devices/{device_id}/accessesaccount:read
GET/api/account/v1/devices/{device_id}/accesses/{access_id}/historyaccount:read
POST/api/account/v1/devices/{device_id}/accessesproxies:write
PATCH/api/account/v1/devices/{device_id}/accesses/{access_id}proxies:write
DELETE/api/account/v1/devices/{device_id}/accesses/{access_id}proxies:write
POST/api/account/v1/devices/{device_id}/accesses/{access_id}/resetproxies:write
POST/api/account/v1/devices/{device_id}/accesses/{access_id}/rebindproxies:write
GET/api/account/v1/devices/{device_id}/triggersaccount:read
POST/api/account/v1/devices/{device_id}/triggersphones:write
DELETE/api/account/v1/devices/{device_id}/triggers/{trigger_id}phones:write
GET/api/account/v1/devices/{device_id}/accesses/{access_id}/tunnel-profileaccount:read
GET/api/account/v1/devices/{device_id}/historyaccount:read
GET/api/account/v1/devices/{device_id}/analyticsaccount:read
GET/api/account/v1/devices/{device_id}/commandsaccount:read
POST/api/account/v1/devices/{device_id}/commandsphones:write
POST/api/account/v1/rotate/{device_id}phones:write
POST/api/account/v1/speedtest/{device_id}phones:write
POST/api/account/v1/devices/{device_id}/comparephones:write
POST/api/account/v1/devices/{device_id}/path-testphones:write
POST/api/account/v1/devices/{device_id}/switchphones:write
POST/api/account/v1/transfers/{tid}/reconcilephones:write
GET/api/account/v1/measurementsaccount:read
GET/api/account/v1/groupsaccount:read
POST/api/account/v1/groupsphones:write
PATCH/api/account/v1/groups/{gid}phones:write
DELETE/api/account/v1/groups/{gid}phones:write
PATCH/api/account/v1/devices/{device_id}/organizationphones:write
GET/api/account/v1/devices/{device_id}/sharingaccount:read
POST/api/account/v1/devices/{device_id}/sharingsharing:write
PATCH/api/account/v1/devices/{device_id}/sharing/{recipient_id}sharing:write
DELETE/api/account/v1/devices/{device_id}/sharing/{recipient_id}sharing:write
GET/api/account/v1/devices/{device_id}/vpn/serviceaccount:read
GET/api/account/v1/devices/{device_id}/vpn/{protocol}account:read
POST/api/account/v1/devices/{device_id}/vpn/{protocol}vpn:write
DELETE/api/account/v1/devices/{device_id}/vpn/{protocol}/{profile_id}vpn:write
PATCH/api/account/v1/devices/{device_id}/vpn/{protocol}/{profile_id}vpn:write
GET/api/account/v1/devices/{device_id}/vpn/{protocol}/{profile_id}/profileaccount:read
GET/api/account/v1/devices/{device_id}/vpn/{protocol}/{profile_id}/qraccount:read
GET/api/account/v1/devices/{device_id}/api-keyaccount:read
POST/api/account/v1/devices/{device_id}/api-keykeys:write
DELETE/api/account/v1/devices/{device_id}/api-keykeys:write
GET/api/account/v1/devices/{device_id}/accesses/{access_id}/api-keyaccount:read
POST/api/account/v1/devices/{device_id}/accesses/{access_id}/api-keykeys:write
DELETE/api/account/v1/devices/{device_id}/accesses/{access_id}/api-keykeys:write

Responses & errors

401: invalid key. 402: paid subscription required. 403: permission or email verification required. 404: resource outside your account. 409: conflict or service limit. 429: rate limit. 503: relay unavailable. Check the result before retrying a financial request or deletion.