Users

Get user

GEThttps://api.firstleeward.com/v0/users/:id

Retrieves a single user by their unique identifier.

Authorizations

Authorizationstring · headerrequired

API key as Bearer token, e.g. Bearer YOUR_API_KEY

Headers

Leeward-Versionenum<string>required

API version (YYYY-MM-DD). Available option: 2026-09-18

Path Parameters

idstring<uuid>required

Response

200User resource with directly-attached spend policies
idstring<uuid>required

Unique user identifier

externalIdstring | nullrequired

Your own identifier for this user, as supplied at creation. Null if none was provided.

emailstring<email>required

User email address

phoneNumberstringrequired

Phone number in E.164 format

firstNamestring | nullrequired

User first name. Null until provided by the client or backfilled from the verified KYC identity on approval.

lastNamestring | nullrequired

User last name. Null until provided by the client or backfilled from the verified KYC identity on approval.

countrystring | nullrequired

ISO 3166-1 alpha-2 country code

dateOfBirthstring | nullrequired

Date of birth (YYYY-MM-DD). Filled from the verified KYC identity, or as sent at creation on corporate employee projects.

nationalitystring | nullrequired

Nationality (ISO 3166-1 alpha-2) as sent at creation on corporate employee projects. Null on other projects.

companyIdstring<uuid> | nullrequired

Company ID (set in CORPORATE program mode)

applicationobjectrequired

KYC application status

Show child attributes
statusstringrequired

Current KYC application status

Available options:NOT_STARTEDAWAITING_DOCUMENTSIN_REVIEWAPPROVEDREJECTEDRETRY_REQUIRED
rejectionReasonstring | nullrequired

Human-readable reason for rejection. Set when status is REJECTED or RETRY_REQUIRED, null otherwise.

rejectionLabelsstring[] | nullrequired

Machine-readable reject codes from the compliance review (for example FORGERY, SELFIE_MISMATCH, EXPIRATION_DATE). Set when status is REJECTED or RETRY_REQUIRED, null otherwise. The set of codes is open-ended - handle unknown values. For your internal use only - do not display these codes to the end user.

documentsobject[] | nullrequired

Supporting documents and their per-document review state. Null for applications with no supporting documents.

Show child attributes
typestringrequired

Supporting document category

Available options:IDENTITYPROOF_OF_ADDRESSCURP
statusstringrequired

Review state of this document

Available options:PENDINGUPLOADEDRETRY_REQUIREDREJECTED
createdAtstringrequired

ISO 8601 timestamp of creation

updatedAtstringrequired

ISO 8601 timestamp of last update

policiesobject[]required

Active spend policies attached directly to this user. Only directly-attached policies are included - those attached at other scopes and platform-enforced limits are not.

Show child attributes
Option 1 · MerchantRestrictionPolicy
idstringrequired

Policy ID. A UUID for your policies; a stable identifier for platform policies.

scopeobjectrequired

Where the policy attaches.

Show child attributes
Option 1 · Project
typestringrequired
Option 2 · User
typestringrequired
idstring<uuid>required
Option 3 · Card
typestringrequired
idstring<uuid>required
statusstringrequired
Available options:ACTIVEDISABLED
namestringrequired

Human-readable label.

createdAtstringrequired

ISO 8601 creation timestamp.

updatedAtstringrequired

ISO 8601 last-update timestamp.

typestringrequired
configobjectrequired

Block transactions whose merchant matches the criteria.

Show child attributes
matchobjectrequired
Show child attributes
Option 1 · Mcc
dimensionstringrequired
codesstring[]required
Option 2 · MerchantCountry
dimensionstringrequired
countriesstring[]required
Option 2 · ChannelRestrictionPolicy
idstringrequired

Policy ID. A UUID for your policies; a stable identifier for platform policies.

scopeobjectrequired

Where the policy attaches.

Show child attributes
Option 1 · Project
typestringrequired
Option 2 · User
typestringrequired
idstring<uuid>required
Option 3 · Card
typestringrequired
idstring<uuid>required
statusstringrequired
Available options:ACTIVEDISABLED
namestringrequired

Human-readable label.

createdAtstringrequired

ISO 8601 creation timestamp.

updatedAtstringrequired

ISO 8601 last-update timestamp.

typestringrequired
configobjectrequired

Block transactions on the listed channels.

Show child attributes
channelsstring[]required
Available options:ATMPOSECOMMERCEVISA_DIRECT
Option 3 · TransactionAmountLimitPolicy
idstringrequired

Policy ID. A UUID for your policies; a stable identifier for platform policies.

scopeobjectrequired

Where the policy attaches.

Show child attributes
Option 1 · Project
typestringrequired
Option 2 · User
typestringrequired
idstring<uuid>required
Option 3 · Card
typestringrequired
idstring<uuid>required
statusstringrequired
Available options:ACTIVEDISABLED
namestringrequired

Human-readable label.

createdAtstringrequired

ISO 8601 creation timestamp.

updatedAtstringrequired

ISO 8601 last-update timestamp.

typestringrequired
currencystringrequired

Currency of the policy's amounts - the billing currency of the project's card program.

configobjectrequired

Cap the amount of a single transaction.

Show child attributes
maxAmountnumberrequired

Amount in the project's billing currency.

Option 4 · SpendLimitPolicy
idstringrequired

Policy ID. A UUID for your policies; a stable identifier for platform policies.

scopeobjectrequired

Where the policy attaches.

Show child attributes
Option 1 · Project
typestringrequired
Option 2 · User
typestringrequired
idstring<uuid>required
Option 3 · Card
typestringrequired
idstring<uuid>required
statusstringrequired
Available options:ACTIVEDISABLED
namestringrequired

Human-readable label.

createdAtstringrequired

ISO 8601 creation timestamp.

updatedAtstringrequired

ISO 8601 last-update timestamp.

typestringrequired
currencystringrequired

Currency of the policy's amounts - the billing currency of the project's card program.

configobjectrequired

Cap cumulative spend over a calendar window.

Show child attributes
windowobjectrequired
Show child attributes
typestringrequired
periodstringrequired
Available options:DAILYWEEKLYMONTHLYYEARLYLIFETIME
maxAmountnumberrequired

Amount in the project's billing currency.

filterobject
Show child attributes
channelsstring[]
Available options:ATMPOSECOMMERCEVISA_DIRECT
merchantobject
Show child attributes
Option 1 · Mcc
dimensionstringrequired
codesstring[]required
Option 2 · MerchantCountry
dimensionstringrequired
countriesstring[]required
Option 5 · AuthorizationCountLimitPolicy
idstringrequired

Policy ID. A UUID for your policies; a stable identifier for platform policies.

scopeobjectrequired

Where the policy attaches.

Show child attributes
Option 1 · Project
typestringrequired
Option 2 · User
typestringrequired
idstring<uuid>required
Option 3 · Card
typestringrequired
idstring<uuid>required
statusstringrequired
Available options:ACTIVEDISABLED
namestringrequired

Human-readable label.

createdAtstringrequired

ISO 8601 creation timestamp.

updatedAtstringrequired

ISO 8601 last-update timestamp.

typestringrequired
configobjectrequired

Cap the number of transactions over a calendar window.

Show child attributes
windowobjectrequired
Show child attributes
typestringrequired
periodstringrequired
Available options:DAILYWEEKLYMONTHLYYEARLYLIFETIME
maxCountintegerrequired

Maximum number of transactions in the window.

filterobject
Show child attributes
channelsstring[]
Available options:ATMPOSECOMMERCEVISA_DIRECT
merchantobject
Show child attributes
Option 1 · Mcc
dimensionstringrequired
codesstring[]required
Option 2 · MerchantCountry
dimensionstringrequired
countriesstring[]required
404User not found
errorobjectrequired
Show child attributes
codestringrequired
messagestringrequired
detailobject | nullrequired