Create a card issuing request

Creates a card issuing request. Requires the caller to be a member of the
target company and either an admin or hold the card_issuing_requests_manage
permission.

On creation the request runs an eligibility check
(Cards::CardIssuingEligibilityChecker); if it fails, the endpoint returns
422 with { "message": <first error>, "errors": [...] }.

For physical CLP cards, recipient_name and shipping_address are required
(model validation). budget_cents must be ≥ 1 and budget_currency a valid
ISO-4217 currency.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params

Payload to create a card issuing request. budget_cents and budget_currency
are validated by the model (budget must be ≥ 1 and a valid ISO-4217 currency).
Physical CLP requests additionally require recipient_name and shipping_address.

string

Display name for the card.

string
required

Firebase user id of the future cardholder. Must belong to company_id.

uuid
required

UUID of the company the card belongs to.

integer
required
≥ 1

Requested spending budget in cents. Must be at least 1.

string
required

ISO-4217 code of the budget currency. Must be a valid currency.

string
enum

Budget renewal interval. Defaults to monthly.

Allowed:
boolean

Request a physical card. Defaults to false. Cannot be changed after creation.

string
enum

Allowed purchase geography.

Allowed:
string

Recipient full name. Required for physical CLP requests.

string

Contact phone for the physical shipment.

shipping_address
object

Shipping address. Required for physical CLP requests.

string
enum

Initial status. Admin-only — ignored for non-admin callers.

Allowed:
Headers
uuid
required

UUID of the company that owns the card.

Responses

401

Unauthorized — missing or invalid bearer token, or the caller is not an
admin/manager of the target company (Pundit authorization failure).
Returned with an empty body.

422

Unprocessable Entity — eligibility check failed or model validation failed
(e.g. budget below 1, invalid currency, missing shipping data for a physical
CLP card). Body: { "message": ..., "errors": [...] }.

Language
Credentials
Bearer
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json