API referenceAd Account Funding

Get ad account funding details

Returns the organization's funding details, opened the first time they are read once one of its ad accounts is shared into its Business Manager. Bank transfers (ACH, wire, RTP) and stablecoins sent to them are added to the chosen ad account as they land, less Koast's fee and the platform location fee: there is no payment page and no amount to announce first. With one shared USD ad account deposits go to it; with more, choose one with PUT /v1/ad-account-funding/target, and deposits wait until then. balances gives each shared ad account's budget, spend and what it has left to spend, read live at most once a minute, or as last read with its readAt while they cannot be read. Refusals: 409 conflict with reason request_not_fundable before any ad account is shared, or funding_details_unavailable while the organization adds funds with a payment page per top-up (POST /v1/ad-account-requests/{requestId}/top-ups). A key limited to specific brands is refused with 403 brand_not_allowed.

GET
/v1/ad-account-funding
bearerAuth
headerAuthorizationBearer <token>

An organization API key (koast_sk_…) with the API surface enabled, or an OAuth access token issued by Koast (koast_at_…) whose audience covers this API. REST access requires an active Agency plan.

Response Body

Get ad account funding details

application/json
  1. response
bank*|

Where to send a US bank transfer in USD: ACH, wire or RTP. Null while bank transfers are not offered.

crypto*array<>

One deposit address per stablecoin and network. Only that coin on that network may be sent to it: another coin or network can be lost for good. Empty while crypto is not offered.

target*|

The ad account deposits go to. Null until one is chosen, when the organization has more than one.

targets*array<>

The ad accounts deposits can go to: the organization's shared USD ad accounts.

minimumCents*integer

The smallest budget, in USD cents, a deposit is added for without Koast checking it first.

Range-9007199254740991 <= value <= 9007199254740991
onHold*boolean

True while deposits and payments for funds are on hold for the organization. The user contacts Koast support.

deposits*array<>

The latest deposits, newest first.

balances*array<>

What each of the organization's shared ad accounts has left to spend.

curl -X GET "https://example.com/v1/ad-account-funding" \  -H "Authorization: Bearer koast_sk_..."
{  "bank": {    "accountName": "string",    "accountNumber": "string",    "routingNumber": "string"  },  "crypto": [    {      "currency": "string",      "network": "string",      "address": "string",      "memo": "string"    }  ],  "target": {    "requestId": "string",    "reference": "string",    "adAccountId": "string",    "name": "string"  },  "targets": [    {      "requestId": "string",      "reference": "string",      "adAccountId": "string",      "name": "string"    }  ],  "minimumCents": -9007199254740991,  "onHold": true,  "deposits": [    {      "id": "string",      "status": "pending",      "heldReason": "no_ad_account",      "rail": "ach",      "receivedCents": -9007199254740991,      "currency": "string",      "budgetCents": -9007199254740991,      "adAccountId": "string",      "createdAt": "string",      "creditedAt": "string"    }  ],  "balances": [    {      "requestId": "string",      "adAccountId": "string",      "name": "string",      "status": "string",      "currency": "string",      "budgetCents": -9007199254740991,      "spentCents": -9007199254740991,      "leftToSpendCents": -9007199254740991,      "spentYesterdayCents": -9007199254740991,      "runwayDays": -9007199254740991,      "readAt": "string",      "low": true    }  ]}

Required scope: read. CLI: koast get-ad-account-funding, see Ad Account Funding commands. Authentication, headers, errors and pagination work the same on every operation. See Conventions.