ResolveService
Resolve Account
Resolve an account by username, account ID, or smart-account address for transfer and sharing flows.
Request
curl --request GET \ \ --url 'https://api.testnet.polyester.com/v1/auth/accounts:resolve?hint=USERNAME&includeSubaccounts=false&query=trader_alpha' \ --header 'Accept: */*' \ --header 'X-API-KEY-ID: YOUR_API_KEY_ID' \ --header 'X-API-TIMESTAMP: YOUR_API_TIMESTAMP' \ --header 'X-API-SIGNATURE: YOUR_API_SIGNATURE'
Responses
{
"matches": [
{
"accountId": "3DwXrzEUpVu",
"kind": "ROOT",
"rootUsername": "trader_alpha",
"smartAccountAddress": "0x2222222222222222222222222222222222222222",
"subaccountLabel": "Market Making"
}
]
}Optional hint for how to parse query. When unspecified, the service auto-detects by query shape.
When true, allow matches on sub-accounts as well as root accounts. Use this for internal transfer flows where the caller may want to resolve a specific sub-account by its ID or smart-account address. Username lookups remain root-only regardless of this flag.
Free-form query typed by the user. Can be: - a username, 3 to 64 characters using letters, digits, underscore, dot, or hyphen - an opaque root account or sub-account ID - an EVM smart-account address formatted as 0x plus 40 hex characters Maximum length is 128 characters.
Smart-account address that would receive funds. This is the address that will receive the transfer, whether it belongs to a root account or a sub-account.
0x2222222222222222222222222222222222222222Category of account that owns this address.
ROOTRoot account username for the result. For sub-account results, this is the parent root account username. Empty means the root account has no username.
trader_alphaOptional sub-account label when kind is SUB.
Market MakingTarget account identifier (opaque ID). For root results this is an account ID; for sub-account results this is a sub-account ID.
3DwXrzEUpVu| Key | Status | Error | When |
|---|---|---|---|
| unauthenticated | 401 | Unauthenticated | Authentication required. |
| permission-denied | 403 | Permission Denied | Permission denied. |
| invalid-argument | 400 | Invalid Argument | Invalid argument. |
| not-found | 404 | Not Found | Not found. |
| unavailable | 503 | Unavailable | Service unavailable. |