Policies
List effective policies
https://api.firstleeward.com/v0/policies/effectiveReturns the policies in force for a card, cardholder, or your program, resolved up the attachment chain (a card inherits its cardholder and program policies). Limits that track a running total over a window include their current usage and remaining headroom, so you can show how much is left. Only active policies are included.
Authorizations
Authorizationstring · headerrequiredAPI key as Bearer token, e.g. Bearer YOUR_API_KEY
Headers
Leeward-Versionenum<string>requiredAPI version (YYYY-MM-DD). Available option: 2026-09-18
Query Parameters
scopeTypestringrequiredThe scope level to resolve policies for.
PROJECTUSERCARDscopeIdstring<uuid>The entity to resolve policies for. Required for entity-level scopes; omit for program-level scopes that carry no id.
Response
200The policies in force for the scope, with current usage for each limit that tracks a running total over a window.
itemsobject[]requiredPolicies in force for the scope, ordered most-specific first (card, then user, then project).
Show child attributes
policyobjectrequiredPolicy resource
Show child attributes
Option 1 · MerchantRestrictionPolicy
idstringrequiredPolicy ID. A UUID for your policies; a stable identifier for platform policies.
scopeobjectrequiredWhere the policy attaches.
Show child attributes
Option 1 · Project
typestringrequiredOption 2 · User
typestringrequiredidstring<uuid>requiredOption 3 · Card
typestringrequiredidstring<uuid>requiredstatusstringrequiredACTIVEDISABLEDnamestringrequiredHuman-readable label.
createdAtstringrequiredISO 8601 creation timestamp.
updatedAtstringrequiredISO 8601 last-update timestamp.
typestringrequiredconfigobjectrequiredBlock transactions whose merchant matches the criteria.
Show child attributes
matchobjectrequiredShow child attributes
Option 1 · Mcc
dimensionstringrequiredcodesstring[]requiredOption 2 · MerchantCountry
dimensionstringrequiredcountriesstring[]requiredOption 2 · ChannelRestrictionPolicy
idstringrequiredPolicy ID. A UUID for your policies; a stable identifier for platform policies.
scopeobjectrequiredWhere the policy attaches.
Show child attributes
Option 1 · Project
typestringrequiredOption 2 · User
typestringrequiredidstring<uuid>requiredOption 3 · Card
typestringrequiredidstring<uuid>requiredstatusstringrequiredACTIVEDISABLEDnamestringrequiredHuman-readable label.
createdAtstringrequiredISO 8601 creation timestamp.
updatedAtstringrequiredISO 8601 last-update timestamp.
typestringrequiredconfigobjectrequiredBlock transactions on the listed channels.
Show child attributes
channelsstring[]requiredATMPOSECOMMERCEVISA_DIRECTOption 3 · TransactionAmountLimitPolicy
idstringrequiredPolicy ID. A UUID for your policies; a stable identifier for platform policies.
scopeobjectrequiredWhere the policy attaches.
Show child attributes
Option 1 · Project
typestringrequiredOption 2 · User
typestringrequiredidstring<uuid>requiredOption 3 · Card
typestringrequiredidstring<uuid>requiredstatusstringrequiredACTIVEDISABLEDnamestringrequiredHuman-readable label.
createdAtstringrequiredISO 8601 creation timestamp.
updatedAtstringrequiredISO 8601 last-update timestamp.
typestringrequiredcurrencystringrequiredCurrency of the policy's amounts - the billing currency of the project's card program.
configobjectrequiredCap the amount of a single transaction.
Show child attributes
maxAmountnumberrequiredAmount in the project's billing currency.
Option 4 · SpendLimitPolicy
idstringrequiredPolicy ID. A UUID for your policies; a stable identifier for platform policies.
scopeobjectrequiredWhere the policy attaches.
Show child attributes
Option 1 · Project
typestringrequiredOption 2 · User
typestringrequiredidstring<uuid>requiredOption 3 · Card
typestringrequiredidstring<uuid>requiredstatusstringrequiredACTIVEDISABLEDnamestringrequiredHuman-readable label.
createdAtstringrequiredISO 8601 creation timestamp.
updatedAtstringrequiredISO 8601 last-update timestamp.
typestringrequiredcurrencystringrequiredCurrency of the policy's amounts - the billing currency of the project's card program.
configobjectrequiredCap cumulative spend over a calendar window.
Show child attributes
windowobjectrequiredShow child attributes
typestringrequiredperiodstringrequiredDAILYWEEKLYMONTHLYYEARLYLIFETIMEmaxAmountnumberrequiredAmount in the project's billing currency.
filterobjectShow child attributes
channelsstring[]ATMPOSECOMMERCEVISA_DIRECTmerchantobjectShow child attributes
Option 1 · Mcc
dimensionstringrequiredcodesstring[]requiredOption 2 · MerchantCountry
dimensionstringrequiredcountriesstring[]requiredOption 5 · AuthorizationCountLimitPolicy
idstringrequiredPolicy ID. A UUID for your policies; a stable identifier for platform policies.
scopeobjectrequiredWhere the policy attaches.
Show child attributes
Option 1 · Project
typestringrequiredOption 2 · User
typestringrequiredidstring<uuid>requiredOption 3 · Card
typestringrequiredidstring<uuid>requiredstatusstringrequiredACTIVEDISABLEDnamestringrequiredHuman-readable label.
createdAtstringrequiredISO 8601 creation timestamp.
updatedAtstringrequiredISO 8601 last-update timestamp.
typestringrequiredconfigobjectrequiredCap the number of transactions over a calendar window.
Show child attributes
windowobjectrequiredShow child attributes
typestringrequiredperiodstringrequiredDAILYWEEKLYMONTHLYYEARLYLIFETIMEmaxCountintegerrequiredMaximum number of transactions in the window.
filterobjectShow child attributes
channelsstring[]ATMPOSECOMMERCEVISA_DIRECTmerchantobjectShow child attributes
Option 1 · Mcc
dimensionstringrequiredcodesstring[]requiredOption 2 · MerchantCountry
dimensionstringrequiredcountriesstring[]requiredusageobject | nullrequiredCurrent usage for limits that track a running total over a window; null for policies that keep no running total.
Show child attributes
limitnumberrequiredThe configured cap for the window (an amount in the project's billing currency or a transaction count, depending on what the limit measures).
usednumberrequiredUsage recorded so far in the current window.
remainingnumberrequiredHeadroom left in the current window.
resetsAtstring<date-time> | nullrequiredWhen the current window resets and usage returns to zero, as a UTC timestamp. Null for a lifetime limit, which never resets.
400The entity the policy attaches to does not exist
errorobjectrequiredShow child attributes
codestringrequiredmessagestringrequireddetailobject | nullrequired