Reference

Build on the Lucra API.

Drag a sticker to move it, or use the arrow keys while focused.

Payments

Paying creators, retainers, and payouts.

Brands pay creators through Lucra. Earnings are held 7 days, then go to the creator's own Stripe balance, and they withdraw whenever they like.

Amounts are in cents: amount is the gross, fee comes out of it, and net is what's left. Every write that moves money needs an Idempotency-Key.

Fees

The defaults below are the standard plan's; an account's plan or agreed terms can differ, and Settings → Billing shows its own.

FeeDefaultPaid by
Payment to a creatorFree
Funding by cardFree
Funding by bank debitFree
Ad spend1.25%The brand
Standard withdrawalFree
Instant withdrawal1.5% (min 50¢)Creator

Payments

Send the creator and the net they receive. The brand is charged that plus any fee its account has.

JSON
{
  "creator": "crtr_026UYfiw1Y6OvUpuKWiOpeL",
  "net": 50000,
  "note": "Launch bonus"
}

The payment is pending until Stripe confirms the charge, then succeeded (or failed, with payment.failed). A retry with the same Idempotency-Key returns the same payment and never charges twice.

During the 7-day hold the brand can dispute a payment with status: "disputed"; after it, the payment is final.

Pay

One pay object describes how programs and retainers pay:

JSON
{
  "base": 50000,
  "rules": [
    { "per": "view", "amount": 800, "unit": 1000 },
    { "on": "approved_submission", "amount": 5000 }
  ],
  "cap": 200000,
  "schedule": { "every": "month" }
}
  • base is guaranteed each period.
  • rules pay per result (per), per event (on), or a percent of ad spend or revenue (percentOf).
  • cap is the most paid per period.
  • approval: "manual" holds each period's payment for you to approve.

Pay that can't be paid

Pay is checked when it's saved. If it couldn't be paid as set, you get 422 invalid_pay listing every problem:

codeWhen
pay_invalid_valueAn amount under 1 cent, a percent not above 0 and at most 100, or a unit under 1.
pay_cap_zerocap is 0. Send null for no cap.
pay_cap_below_amountcap is below an amount paid in one go (an on rule's amount, a per rule's amount for one unit, or base), so it could never be paid.
pay_cap_requiredAn organic program without a cap.
pay_base_needs_periodA base on a program, or with an event or measurement schedule. A base needs a schedule of every day, week, month, or quarter.
pay_schedule_mismatchA retainer not paid every day, week, month, or quarter; a program on another schedule than its type's; or an organic program paying on ad results (ad spend, attributed revenue, impressions, clicks, installs, leads, purchases), which organic programs never have.
pay_duplicate_ruleTwo rules on the same results (the same metric and scope), which would pay them twice; combine them into one.
pay_scope_invalidA scope.campaign that isn't one of the brand's campaigns, or for a program, not one built from the program's work. A new program has none yet.
pay_exceeds_budgetA single amount larger than the program's budget.amount.
pay_primary_missingA program without the rule its type pays per result (see programs).
pay_primary_changedProgram pay, or a creator's pay, that changes what the program pays per result on (for example ad spend to leads). Change the amount instead.
pay_program_unsupported"approval": "manual" on a program, or pay per approved video on an organic program.

Retainers

Recurring pay for one creator: offer it with { "creator", "pay", "deliverables" }. The creator accepts or rejects it with PATCH /v1/retainers/:id { "status": "accepted" } (or "rejected"); a partner does this for its roster creator with Lucra-Account: crtr_…. Offering and answering need an Idempotency-Key. Each period pays its base up front and earned results at the end. Cancel with status: "canceling"; the current period is still paid.

Failed charges

A declined charge retries after 1, 2, 2, and 2 days, then the retainer goes past_due until the brand updates its payment method. Program pay retries the same way.

Balance

GET /v1/balance shows a brand's program funds or a creator's earnings. Add funds with POST /v1/balance/deposits.

Payouts

Lucra sends each earning past its hold to the creator's Stripe balance every hour, once they've verified their identity. GET /v1/payouts lists them.

Withdrawals

POST /v1/withdrawals moves a balance to the bank: standard (free) or instant. Leave out amount to withdraw everything.

Earnings

GET /v1/earnings lists what a creator earned, with its status: pending, held, available, or paid.

Endpoints

GET/v1/balance
As creatorread

Get the balance: the account's funds, or a creator's earnings

SDKlucra.balance.retrieve()
Response2002 fieldsShow
  • balancesobject[]
    Show 10 child fields
    • currencystring

      Lowercase ISO 4217 code, e.g. usd.

    • availableinteger

      A brand's funds free to commit to programs; a creator's earnings past their hold, sent to their Stripe balance within the hour once their identity is verified.

    • pendinginteger

      A brand's funding that hasn't settled; a creator's earnings not yet final.

    • heldinteger

      A brand's funds held for ad-spend usage charges; a creator's earnings on their hold.

    • reservedinteger

      A brand's funds held for its programs' creators; 0 for a creator.

    • spentinteger

      Spent from a brand's funds; 0 for a creator.

    • refundableinteger

      Can be refunded with POST /v1/balance/refunds; 0 for a creator.

    • paidinteger

      A creator's earnings sent to their Stripe balance, all time; 0 for an account.

    • withdrawableinteger

      In this balance's Stripe account (a creator's, or an account's commissions), ready to withdraw with POST /v1/withdrawals.

    • instantWithdrawableinteger

      How much of `withdrawable` can go out instantly, to a debit card.

  • withdrawalFeesobject

    What a withdrawal costs; it comes out of the amount.

    Show 2 child fields
    • instantobject
      Show 2 child fields
      • percentnumber

        A percent, e.g. 1.5 for 1.5%.

      • minimuminteger

        The least an instant withdrawal costs.

    • crossBorderobject

      Added outside the US; 0 in the US.

      Show 1 child field
      • percentnumber

        A percent, e.g. 1.5 for 1.5%.

GET/v1/balance/transactions
read

List every ledger line on the account

SDKlucra.balance.transactions.list({ query })

Query parameters

  • limitinteger
  • cursorstring
  • createdAfterstring

    Only items created at or after this time.

  • createdBeforestring

    Only items created before this time.

  • typestring

    Comma-separated transaction types, e.g. deposit,funding_refund.

  • programprog_…
Response200A page of items, 17 fields each, and nextCursorShow
  • idtxn_…
  • typestring
  • statusstring
  • amountinteger

    Signed, in cents: positive adds to the balance.

  • feeinteger

    In cents.

  • netinteger

    Signed, in cents: `amount` less `fee`.

  • balancenumbernullable
  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • descriptionstringnullable

    What it is, e.g. Creator payment.

  • memostringnullable
  • sourcestring
  • counterpartyobject
    Show 3 child fields
    • typeenum
      partnerpayment_methodcreatorplatformaccount
    • idcrtr_…nullable

      Set when the other side is a creator.

    • namestringnullable
  • campaigncamp_…nullable
  • programprog_…nullable
  • depositdep_…nullable

    The deposit this line funds, if any.

  • refundrfnd_…nullable

    The refund this line is, if any.

  • occurredAtstring
POST/v1/balance/deposits
write

Add funds to the balance

SDKlucra.balance.deposits.create({ body })

Headers

  • Idempotency-Keystringrequired

    Unique to this write; resend it to retry safely.

Body

  • netintegerrequired

    In cents, what the balance receives: more than $0.50, at most $999,999.99. A card's fee is charged on top.

  • methodenum

    bank: a free bank debit; card: adds Lucra's card fee to the charge.

    bankcard
  • checkoutenum

    hosted (the default): pay at `checkoutUrl`; elements: pay in your own form with Stripe's Payment Element and `clientSecret`.

    hostedelements
GET/v1/balance/deposits
read

List deposits to the balance

SDKlucra.balance.deposits.list({ query })

Query parameters

  • limitinteger
  • cursorstring
  • createdAfterstring

    Only items created at or after this time.

  • createdBeforestring

    Only items created before this time.

Response200A page of items, 10 fields each, and nextCursorShow
  • iddep_…
  • amountinteger

    Charged to the payer, in cents.

  • feeinteger

    Taken from `amount`, in cents.

  • netinteger

    `amount` less `fee`, in cents.

  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • methodenum

    bank: a free bank debit; card: Lucra's card fee is charged on top of what the balance receives.

    bankcard
  • statusenum

    pending until the payer pays and it settles; `net` is then available.

    pendingavailablefailedpartially_refundedrefundeddisputed
  • checkoutUrlstringnullable

    Stripe Checkout: send the payer here to pay; null for an elements checkout.

  • createdAtstring
  • updatedAtstring
GET/v1/balance/deposits/:id
read

Get a deposit

SDKlucra.balance.deposits.retrieve({ path: { id } })

Path parameters

  • idstringrequired
Response20010 fieldsShow
  • iddep_…
  • amountinteger

    Charged to the payer, in cents.

  • feeinteger

    Taken from `amount`, in cents.

  • netinteger

    `amount` less `fee`, in cents.

  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • methodenum

    bank: a free bank debit; card: Lucra's card fee is charged on top of what the balance receives.

    bankcard
  • statusenum

    pending until the payer pays and it settles; `net` is then available.

    pendingavailablefailedpartially_refundedrefundeddisputed
  • checkoutUrlstringnullable

    Stripe Checkout: send the payer here to pay; null for an elements checkout.

  • createdAtstring
  • updatedAtstring
POST/v1/balance/refunds
write

Refund available funds

SDKlucra.balance.refunds.create({ body })

Headers

  • Idempotency-Keystringrequired

    Unique to this write; resend it to retry safely.

Body

  • amountintegerrequired

    In cents, up to the balance's `refundable`.

Response2018 fieldsShow
  • idrfnd_…
  • amountinteger

    Returned to the cards and banks the deposits came from, in cents.

  • feeinteger

    Taken from `amount`, in cents.

  • netinteger

    `amount` less `fee`, in cents.

  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • statusenum
    processingsucceededfailedreversed
  • createdAtstring
  • updatedAtstring
GET/v1/balance/refunds
read

List refunds from the balance

SDKlucra.balance.refunds.list({ query })

Query parameters

  • limitinteger
  • cursorstring
  • createdAfterstring

    Only items created at or after this time.

  • createdBeforestring

    Only items created before this time.

Response200A page of items, 8 fields each, and nextCursorShow
  • idrfnd_…
  • amountinteger

    Returned to the cards and banks the deposits came from, in cents.

  • feeinteger

    Taken from `amount`, in cents.

  • netinteger

    `amount` less `fee`, in cents.

  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • statusenum
    processingsucceededfailedreversed
  • createdAtstring
  • updatedAtstring
GET/v1/balance/refunds/:id
read

Get a refund

SDKlucra.balance.refunds.retrieve({ path: { id } })

Path parameters

  • idstringrequired
Response2008 fieldsShow
  • idrfnd_…
  • amountinteger

    Returned to the cards and banks the deposits came from, in cents.

  • feeinteger

    Taken from `amount`, in cents.

  • netinteger

    `amount` less `fee`, in cents.

  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • statusenum
    processingsucceededfailedreversed
  • createdAtstring
  • updatedAtstring
POST/v1/payments
write

Pay a creator

SDKlucra.payments.create({ body })

Headers

  • Idempotency-Keystringrequired

    Unique to this write; resend it to retry safely.

Body

  • creatorcrtr_…required
  • netintegerrequired

    In cents, what the creator receives; Lucra's fee is charged on top.

  • notestring
Response20115 fieldsShow
  • idpay_…
  • creatorcrtr_…
  • amountinteger

    Charged to the brand: what the creator receives (`net`) plus Lucra's fee, in cents.

  • feeinteger

    Taken from `amount`, in cents.

  • netinteger

    `amount` less `fee`, in cents.

  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • statusenum

    pending_approval until the brand approves it, then approved while it's charged; pending until Stripe confirms the charge; then succeeded, or failed with `failureMessage`. disputed until Lucra decides; refunded if canceled.

    pending_approvalapprovedpendingsucceededfailedrefundeddisputed
  • retainerret_…nullable

    The retainer this is a period payment of, if any.

  • failureMessagestringnullable
  • notestringnullable
  • holdUntilAtstringnullable
  • disputeobjectnullable

    While `status` is disputed: who opened it and why; null otherwise.

    Show 3 child fields
    • byenum

      brand: the paying brand disputed it; lucra: Lucra holds it for review.

      brandlucra
    • reasonstringnullable

      Why; a Lucra hold's reason shows only to Lucra's admin.

    • openedAtstringnullable
  • versioninteger

    Send it back on PATCH to reject edits based on a stale read.

  • createdAtstring
  • updatedAtstring
GET/v1/payments
As creatorread

List payments to creators

SDKlucra.payments.list({ query })

Query parameters

  • limitinteger
  • cursorstring
  • createdAfterstring

    Only items created at or after this time.

  • createdBeforestring

    Only items created before this time.

  • creatorcrtr_…
  • retainerret_…
  • statusenum

    pending_approval until the brand approves it, then approved while it's charged; pending until Stripe confirms the charge; then succeeded, or failed with `failureMessage`. disputed until Lucra decides; refunded if canceled.

    pending_approvalapprovedpendingsucceededfailedrefundeddisputed
Response200A page of items, 15 fields each, and nextCursorShow
  • idpay_…
  • creatorcrtr_…
  • amountinteger

    Charged to the brand: what the creator receives (`net`) plus Lucra's fee, in cents.

  • feeinteger

    Taken from `amount`, in cents.

  • netinteger

    `amount` less `fee`, in cents.

  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • statusenum

    pending_approval until the brand approves it, then approved while it's charged; pending until Stripe confirms the charge; then succeeded, or failed with `failureMessage`. disputed until Lucra decides; refunded if canceled.

    pending_approvalapprovedpendingsucceededfailedrefundeddisputed
  • retainerret_…nullable

    The retainer this is a period payment of, if any.

  • failureMessagestringnullable
  • notestringnullable
  • holdUntilAtstringnullable
  • disputeobjectnullable

    While `status` is disputed: who opened it and why; null otherwise.

    Show 3 child fields
    • byenum

      brand: the paying brand disputed it; lucra: Lucra holds it for review.

      brandlucra
    • reasonstringnullable

      Why; a Lucra hold's reason shows only to Lucra's admin.

    • openedAtstringnullable
  • versioninteger

    Send it back on PATCH to reject edits based on a stale read.

  • createdAtstring
  • updatedAtstring
GET/v1/payments/:id
As creatorread

Get a payment to a creator

SDKlucra.payments.retrieve({ path: { id } })

Path parameters

  • idstringrequired
Response20015 fieldsShow
  • idpay_…
  • creatorcrtr_…
  • amountinteger

    Charged to the brand: what the creator receives (`net`) plus Lucra's fee, in cents.

  • feeinteger

    Taken from `amount`, in cents.

  • netinteger

    `amount` less `fee`, in cents.

  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • statusenum

    pending_approval until the brand approves it, then approved while it's charged; pending until Stripe confirms the charge; then succeeded, or failed with `failureMessage`. disputed until Lucra decides; refunded if canceled.

    pending_approvalapprovedpendingsucceededfailedrefundeddisputed
  • retainerret_…nullable

    The retainer this is a period payment of, if any.

  • failureMessagestringnullable
  • notestringnullable
  • holdUntilAtstringnullable
  • disputeobjectnullable

    While `status` is disputed: who opened it and why; null otherwise.

    Show 3 child fields
    • byenum

      brand: the paying brand disputed it; lucra: Lucra holds it for review.

      brandlucra
    • reasonstringnullable

      Why; a Lucra hold's reason shows only to Lucra's admin.

    • openedAtstringnullable
  • versioninteger

    Send it back on PATCH to reject edits based on a stale read.

  • createdAtstring
  • updatedAtstring
PATCH/v1/payments/:id
write

Approve or dispute a payment to a creator

SDKlucra.payments.update({ path: { id }, body })

Path parameters

  • idstringrequired

Headers

  • Idempotency-Keystringrequired

    Unique to this write; resend it to retry safely.

Response20015 fieldsShow
  • idpay_…
  • creatorcrtr_…
  • amountinteger

    Charged to the brand: what the creator receives (`net`) plus Lucra's fee, in cents.

  • feeinteger

    Taken from `amount`, in cents.

  • netinteger

    `amount` less `fee`, in cents.

  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • statusenum

    pending_approval until the brand approves it, then approved while it's charged; pending until Stripe confirms the charge; then succeeded, or failed with `failureMessage`. disputed until Lucra decides; refunded if canceled.

    pending_approvalapprovedpendingsucceededfailedrefundeddisputed
  • retainerret_…nullable

    The retainer this is a period payment of, if any.

  • failureMessagestringnullable
  • notestringnullable
  • holdUntilAtstringnullable
  • disputeobjectnullable

    While `status` is disputed: who opened it and why; null otherwise.

    Show 3 child fields
    • byenum

      brand: the paying brand disputed it; lucra: Lucra holds it for review.

      brandlucra
    • reasonstringnullable

      Why; a Lucra hold's reason shows only to Lucra's admin.

    • openedAtstringnullable
  • versioninteger

    Send it back on PATCH to reject edits based on a stale read.

  • createdAtstring
  • updatedAtstring
GET/v1/payouts
As creatorread

List payouts: to creators from this brand's earnings, received by this account, or (as a creator) the creator's own

SDKlucra.payouts.list({ query })

Query parameters

  • limitinteger
  • cursorstring
  • createdAfterstring

    Only items created at or after this time.

  • createdBeforestring

    Only items created before this time.

  • directionenum
    sentreceived
  • creatorcrtr_…
  • statusstring

    One or more, comma-separated: pending, submitted, paid, failed, reversed, unknown.

Response200A page of items, 12 fields each, and nextCursorShow
  • idpout_…
  • directionenum

    sent: from this brand's earnings to a creator's balance; received: paid to this account's balance, like a partner's commission.

    sentreceived
  • creatorcrtr_…nullable
  • sourcesenum[]
    paid_adsorganicsubmissionprogrambonusretainerreferraladjustmentpartner_commission
  • amountinteger

    The earnings it pays; `net` is sent to the recipient's Stripe balance, in cents.

  • feeinteger

    Taken from `amount`, in cents.

  • netinteger

    `amount` less `fee`, in cents.

  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • statusenum
    pendingsubmittedpaidfailedreversedunknown
  • failureMessagestringnullable
  • createdAtstring
  • updatedAtstring
GET/v1/payouts/:id
As creatorread

Get a payout

SDKlucra.payouts.retrieve({ path: { id } })

Path parameters

  • idstringrequired
Response20012 fieldsShow
  • idpout_…
  • directionenum

    sent: from this brand's earnings to a creator's balance; received: paid to this account's balance, like a partner's commission.

    sentreceived
  • creatorcrtr_…nullable
  • sourcesenum[]
    paid_adsorganicsubmissionprogrambonusretainerreferraladjustmentpartner_commission
  • amountinteger

    The earnings it pays; `net` is sent to the recipient's Stripe balance, in cents.

  • feeinteger

    Taken from `amount`, in cents.

  • netinteger

    `amount` less `fee`, in cents.

  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • statusenum
    pendingsubmittedpaidfailedreversedunknown
  • failureMessagestringnullable
  • createdAtstring
  • updatedAtstring
GET/v1/earnings
As creatorread

List a creator's earnings

SDKlucra.earnings.list({ query })

Query parameters

  • limitinteger
  • cursorstring
  • createdAfterstring

    Only items created at or after this time.

  • createdBeforestring

    Only items created before this time.

  • statusstring

    One or more, comma-separated: pending, held, available, paid.

  • sourcestring

    One or more, comma-separated: paid_ads, organic, submission, program, bonus, retainer, referral, adjustment, partner_commission.

  • programprog_…
  • retainerret_…
Response200A page of items, 13 fields each, and nextCursorShow
  • idern_…
  • programprog_…nullable
  • accountacct_…

    The brand that paid it.

  • submissionsub_…nullable
  • retainerret_…nullable
  • sourceenum
    paid_adsorganicsubmissionprogrambonusretainerreferraladjustmentpartner_commission
  • amountinteger

    Earned before any partner take rate (`fee`); the creator receives `net`, in cents.

  • feeinteger

    Taken from `amount`, in cents.

  • netinteger

    `amount` less `fee`, in cents.

  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • statusenum

    held until holdUntilAt, then available, then paid: sent to the creator's Stripe balance (once their identity is verified), to withdraw.

    pendingheldavailablepaid
  • holdUntilAtstringnullable
  • occurredAtstring
GET/v1/earnings/:id
As creatorread

Get one of a creator's earnings

SDKlucra.earnings.retrieve({ path: { id } })

Path parameters

  • idstringrequired
Response20013 fieldsShow
  • idern_…
  • programprog_…nullable
  • accountacct_…

    The brand that paid it.

  • submissionsub_…nullable
  • retainerret_…nullable
  • sourceenum
    paid_adsorganicsubmissionprogrambonusretainerreferraladjustmentpartner_commission
  • amountinteger

    Earned before any partner take rate (`fee`); the creator receives `net`, in cents.

  • feeinteger

    Taken from `amount`, in cents.

  • netinteger

    `amount` less `fee`, in cents.

  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • statusenum

    held until holdUntilAt, then available, then paid: sent to the creator's Stripe balance (once their identity is verified), to withdraw.

    pendingheldavailablepaid
  • holdUntilAtstringnullable
  • occurredAtstring
POST/v1/withdrawals
As creatorwrite

Withdraw from the balance to the bank account or debit card

SDKlucra.withdrawals.create({ body })

Headers

  • Idempotency-Keystringrequired

    Unique to this write; resend it to retry safely.

Body

  • amountinteger

    In cents; defaults to everything withdrawable.

  • speedenum
    standardinstant
Response20111 fieldsShow
  • idwdr_…
  • amountinteger

    Taken from the balance, in cents.

  • feeinteger

    Lucra's fee, taken from the amount: the instant fee, plus the cross-border fee outside the US.

  • netinteger

    `amount` less `fee`: what reaches the bank or card, in cents.

  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • speedenum
    standardinstant
  • statusenum

    in_transit once Stripe accepted it; paid when it reached the bank.

    pendingin_transitpaidfailed
  • failureMessagestringnullable
  • arrivesAtstringnullable
  • createdAtstring
  • updatedAtstring
GET/v1/withdrawals
As creatorread

List withdrawals from the balance

SDKlucra.withdrawals.list({ query })

Query parameters

  • limitinteger
  • cursorstring
  • createdAfterstring

    Only items created at or after this time.

  • createdBeforestring

    Only items created before this time.

  • statusstring

    One or more, comma-separated: pending, in_transit, paid, failed.

Response200A page of items, 11 fields each, and nextCursorShow
  • idwdr_…
  • amountinteger

    Taken from the balance, in cents.

  • feeinteger

    Lucra's fee, taken from the amount: the instant fee, plus the cross-border fee outside the US.

  • netinteger

    `amount` less `fee`: what reaches the bank or card, in cents.

  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • speedenum
    standardinstant
  • statusenum

    in_transit once Stripe accepted it; paid when it reached the bank.

    pendingin_transitpaidfailed
  • failureMessagestringnullable
  • arrivesAtstringnullable
  • createdAtstring
  • updatedAtstring
GET/v1/withdrawals/:id
As creatorread

Get a withdrawal

SDKlucra.withdrawals.retrieve({ path: { id } })

Path parameters

  • idstringrequired
Response20011 fieldsShow
  • idwdr_…
  • amountinteger

    Taken from the balance, in cents.

  • feeinteger

    Lucra's fee, taken from the amount: the instant fee, plus the cross-border fee outside the US.

  • netinteger

    `amount` less `fee`: what reaches the bank or card, in cents.

  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • speedenum
    standardinstant
  • statusenum

    in_transit once Stripe accepted it; paid when it reached the bank.

    pendingin_transitpaidfailed
  • failureMessagestringnullable
  • arrivesAtstringnullable
  • createdAtstring
  • updatedAtstring
GET/v1/retainers
As creatorread

List retainers

SDKlucra.retainers.list({ query })

Query parameters

  • limitinteger
  • cursorstring
  • createdAfterstring

    Only items created at or after this time.

  • createdBeforestring

    Only items created before this time.

  • creatorcrtr_…
Response200A page of items, 19 fields each, and nextCursorShow
  • idret_…
  • creatorcrtr_…
  • accountacct_…

    The brand that offers the retainer.

  • brandNamestring
  • brandAvatarUrlstringnullable
  • payobject
    Show 5 child fields
    • rulesobject[]
    • baseinteger

      Guaranteed each period, in cents.

    • capintegernullable

      The most one creator is paid per period, in cents; null or left out for no cap.

    • scheduleobject
    • approvalenum

      automatic pays each period on its own; manual waits for the brand to approve the calculated amount.

      automaticmanual
  • summarystring
  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • statusenum
    draftofferedacceptedactivecancelingendedrejected
  • billingStatusstring
  • currentPeriodEndAtstringnullable
  • deliverablesstringnullable
  • notesstringnullable
  • documentsany[]

    The agreements accepting accepts; `accepted` once the creator accepted that version with this brand.

  • offeredAtstring
  • acceptedAtstringnullable
  • versioninteger

    Send it back on PATCH to reject edits based on a stale read.

  • createdAtstring
  • updatedAtstring
GET/v1/retainers/:id
As creatorread

Get a retainer

SDKlucra.retainers.retrieve({ path: { id } })

Path parameters

  • idstringrequired
Response20019 fieldsShow
  • idret_…
  • creatorcrtr_…
  • accountacct_…

    The brand that offers the retainer.

  • brandNamestring
  • brandAvatarUrlstringnullable
  • payobject
    Show 5 child fields
    • rulesobject[]
    • baseinteger

      Guaranteed each period, in cents.

    • capintegernullable

      The most one creator is paid per period, in cents; null or left out for no cap.

    • scheduleobject
    • approvalenum

      automatic pays each period on its own; manual waits for the brand to approve the calculated amount.

      automaticmanual
  • summarystring
  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • statusenum
    draftofferedacceptedactivecancelingendedrejected
  • billingStatusstring
  • currentPeriodEndAtstringnullable
  • deliverablesstringnullable
  • notesstringnullable
  • documentsany[]

    The agreements accepting accepts; `accepted` once the creator accepted that version with this brand.

  • offeredAtstring
  • acceptedAtstringnullable
  • versioninteger

    Send it back on PATCH to reject edits based on a stale read.

  • createdAtstring
  • updatedAtstring
POST/v1/retainers
write

Offer a creator a retainer

SDKlucra.retainers.create({ body })

Headers

  • Idempotency-Keystringrequired

    Unique to this write; resend it to retry safely.

Body

  • creatorcrtr_…required
  • payobjectrequired
    Show 5 child fields
    • rulesobject[]
    • baseinteger

      Guaranteed each period, in cents.

    • capintegernullable

      The most one creator is paid per period, in cents; null or left out for no cap.

    • scheduleobjectrequired
    • approvalenum

      automatic pays each period on its own; manual waits for the brand to approve the calculated amount.

      automaticmanual
  • deliverablesstring
  • notesstring
Response20119 fieldsShow
  • idret_…
  • creatorcrtr_…
  • accountacct_…

    The brand that offers the retainer.

  • brandNamestring
  • brandAvatarUrlstringnullable
  • payobject
    Show 5 child fields
    • rulesobject[]
    • baseinteger

      Guaranteed each period, in cents.

    • capintegernullable

      The most one creator is paid per period, in cents; null or left out for no cap.

    • scheduleobject
    • approvalenum

      automatic pays each period on its own; manual waits for the brand to approve the calculated amount.

      automaticmanual
  • summarystring
  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • statusenum
    draftofferedacceptedactivecancelingendedrejected
  • billingStatusstring
  • currentPeriodEndAtstringnullable
  • deliverablesstringnullable
  • notesstringnullable
  • documentsany[]

    The agreements accepting accepts; `accepted` once the creator accepted that version with this brand.

  • offeredAtstring
  • acceptedAtstringnullable
  • versioninteger

    Send it back on PATCH to reject edits based on a stale read.

  • createdAtstring
  • updatedAtstring
PATCH/v1/retainers/:id
As creatorwrite

Cancel a retainer, or, as the creator, accept or reject an offer or cancel

SDKlucra.retainers.update({ path: { id }, body })

Path parameters

  • idstringrequired

Body

  • statusenumrequired
    acceptedrejectedcanceling
  • versioninteger
Response20019 fieldsShow
  • idret_…
  • creatorcrtr_…
  • accountacct_…

    The brand that offers the retainer.

  • brandNamestring
  • brandAvatarUrlstringnullable
  • payobject
    Show 5 child fields
    • rulesobject[]
    • baseinteger

      Guaranteed each period, in cents.

    • capintegernullable

      The most one creator is paid per period, in cents; null or left out for no cap.

    • scheduleobject
    • approvalenum

      automatic pays each period on its own; manual waits for the brand to approve the calculated amount.

      automaticmanual
  • summarystring
  • currencystring

    Lowercase ISO 4217 code, e.g. usd.

  • statusenum
    draftofferedacceptedactivecancelingendedrejected
  • billingStatusstring
  • currentPeriodEndAtstringnullable
  • deliverablesstringnullable
  • notesstringnullable
  • documentsany[]

    The agreements accepting accepts; `accepted` once the creator accepted that version with this brand.

  • offeredAtstring
  • acceptedAtstringnullable
  • versioninteger

    Send it back on PATCH to reject edits based on a stale read.

  • createdAtstring
  • updatedAtstring