Skip to main content
All Natural API resources use prefixed IDs. These combine a type prefix with a UUID, making IDs both human-readable and type-safe.

Format

{prefix}_{uuid_hex}
Example: pty_019cd34e27bf78399b4e75b327d2ab25
  • Prefix: 2-4 character type indicator (e.g., pty_ for party)
  • UUID: 32 hexadecimal characters (no hyphens)

ID types

PrefixResourceDescription
pty_PartyBusiness or individual entity on the platform
usr_UserPerson who logs into a party
agt_AgentAPI client that acts on behalf of a party
dlg_DelegationPermission grant between two parties
adl_Agent DelegationLinks an agent to a delegation
din_Delegation InvitationPending invitation to create a delegation
dlk_Delegation LinkShareable URL to accept a delegation
mbr_Party MembershipA user’s membership in a party
ses_SessionAuthenticated user session
bno_Beneficial OwnerUltimate beneficial owner on a business party
apy_API KeyCredential for API access
sk_ntl_API Key SecretSecret value, format: sk_ntl_{env}_{secret}
wal_WalletHolds funds for a party
efs_External Funding SourceLinked bank account for deposits and withdrawals
pay_PaymentA payment between two parties
trf_TransferFund movement between wallets
txn_TransactionLedger entry returned by GET /transactions
hld_Hold RequestPolicy hold on a pending payment
req_RequestCorrelation ID for money movement operations
esc_EscalationCompliance review of a held payment

Working with IDs

API requests

Always use the full prefixed ID in API requests:
{
  "customer_party_id": "pty_019cd34e27bf78399b4e75b327d2ab25",
  "counterparty": {
    "identifier_type": "party_id",
    "identifier": "pty_019cd1798d617f65a79cb965dda9eac3"
  }
}

Validation

IDs are validated on every request. Invalid formats return a 400 Bad Request:
{
  "error": "Invalid ID prefix: expected pty_, got usr_"
}
  • Parties - Primary business entity using pty_ IDs
  • Users - Human users with usr_ IDs
  • Agents - AI agents with agt_ IDs