Skip to main content

Overview

Application tokens power shareable links for withdrawal widgets and account linking. Use the Liquidity API to list existing tokens and create new ones. All requests require a Bearer token obtained via Generate Access Token.

List Application Tokens

GET {{LIQUIDITY_URL}}/v1/ext/application-token
Auth: Bearer {{accessToken}}
Returns a paginated list of application tokens for your business.

Response (200)

{
  "data": [
    {
      "url": "https://sandbox.accounts.centryos.xyz/withdraw/sATdEsJ4RyHF1Ju2EAO_5uglFWEwnQ",
      "application": {
        "id": "098d77b4-ea05-43b1-8b28-cb113b4fc213",
        "externalId": null,
        "token": "sATdEsJ4RyHF1Ju2EAO_5uglFWEwnQ",
        "tokenType": "ACCOUNT_WIDGET",
        "createdAt": "2026-02-15T22:58:40.585Z",
        "expiredAt": "2027-02-15T22:58:40.583Z",
        "valid": true,
        "metadata": "{\"currency\":\"USD\",\"tokenType\":\"ACCOUNT_WIDGET\",\"walletId\":\"35673e53-5519-4841-9ac6-50b6d5273b70\",\"extra\":{\"amountLocked\":false,\"useLinkAccountPath\":false}}",
        "feeHidden": false,
        "redirectTo": "",
        "status": "active",
        "business": {
          "id": "9b5e1e96-5796-4648-94d4-62253728291e",
          "slug": "gradientfi",
          "contactEmail": "akanksha@gradientfi.com",
          "contactPhoneNumber": null
        }
      }
    }
  ],
  "meta": {
    "page": 1,
    "pageSize": 10,
    "pageCount": 9,
    "total": 85
  },
  "success": true
}

Response Fields

FieldTypeDescription
dataarrayList of application token objects
data[].urlstringShareable URL for the widget
data[].application.idstringApplication ID
data[].application.tokenstringToken used in the URL
data[].application.tokenTypestringe.g. ACCOUNT_WIDGET
data[].application.validbooleanWhether the token is currently valid
data[].application.statusstringactive or inactive
meta.pagenumberCurrent page
meta.pageSizenumberItems per page
meta.totalnumberTotal number of tokens

Create Application Token

POST {{LIQUIDITY_URL}}/v1/ext/application-token
Auth: Bearer {{accessToken}}
Creates a new application token for a withdrawal or account-linking widget.

Request

curl -X POST "{{LIQUIDITY_URL}}/v1/ext/application-token" \
  -H "Authorization: Bearer {{accessToken}}" \
  -H "Content-Type: application/json" \
  -d '{
    "expiredAt": "{{$randomDateFuture}}",
    "tokenType": "ACCOUNT_WIDGET",
    "currency": "USD",
    "feeHidden": true,
    "redirectTo": "https://example.com/thank-you",
    "extra": {
      "withdrawalSource": "MERCHANT_WALLET",
      "amount": 45,
      "accountOptions": ["card", "bank", "venmo", "paypal"],
      "counterparty": {
        "firstName": "{{$randomFirstName}}",
        "lastName": "{{$randomLastName}}",
        "email": "timii@gradientfi.com"
      }
    }
  }'

Request Body

FieldTypeDescriptionRequired
expiredAtstringExpiration datetime (ISO 8601 format)Yes
tokenTypestringMust be ACCOUNT_WIDGETYes
currencystringCurrency code (e.g., USD)Yes
feeHiddenbooleanHide fees from the userNo
redirectTostringURL to redirect after completionNo
extra.withdrawalSourcestringMust be MERCHANT_WALLETNo
extra.amountnumberAmount tied to the widgetNo
extra.accountOptionsarrayAllowed methods: card, bank, venmo, paypalNo
extra.counterpartyobjectCounterparty info (firstName, lastName, email)No

Response (200)

{
  "data": {
    "url": "https://sandbox.accounts.centryos.xyz/sATjgfpPo1QyfoSFJSQHWTr9Gr3cow",
    "application": {
      "id": "d4c26920-7040-4b12-9ff1-5853f5977f20",
      "token": "sATjgfpPo1QyfoSFJSQHWTr9Gr3cow",
      "tokenType": "ACCOUNT_WIDGET",
      "expiredAt": "2024-07-11T06:57:08.000Z",
      "valid": true
    }
  }
}

Response Fields

FieldTypeDescription
data.urlstringShareable widget URL
data.application.idstringApplication ID
data.application.tokenstringToken for the URL
data.application.tokenTypestringToken type
data.application.expiredAtstringExpiration datetime (ISO 8601)
data.application.validbooleanWhether the token is valid