BagsBags Docs

List payment links

GET
/api/v1/payment-links
AuthorizationBearer <token>

BAGS Agent API key from the dashboard. Standalone agentic keys manage products, payment links, and transaction reads.

In: header

Query Parameters

limit?integer

Maximum number of items to return. Clamped to [1, 100]; defaults to 25.

Range1 <= value <= 100
starting_after?string

Cursor — pass the id of the last item from the previous page.

Match^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
Formatuuid
curl -X GET "https://www.getbags.app/api/v1/payment-links"
{
  "status": "success",
  "data": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "productId": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
      "name": "Pro Plan",
      "description": "Monthly access to premium features",
      "amount": 29.99,
      "currency": "USD",
      "network": "base",
      "networks": [
        "base",
        "ethereum"
      ],
      "token": "USDC",
      "active": true,
      "mode": "live",
      "livemode": true,
      "pricingType": "one_time",
      "billingInterval": null,
      "billingIntervalCount": null,
      "trialDays": null,
      "merchantWalletAddress": "0x1111111111111111111111111111111111111111",
      "merchantId": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
      "merchantWalletAddresses": {
        "base": "0x1111111111111111111111111111111111111111"
      },
      "merchantName": "Acme Corp",
      "totalCollected": 0,
      "totalTransactions": 0,
      "customFields": [],
      "isAgenticProxy": false,
      "targetUrl": null,
      "targetMethod": null,
      "x402Scheme": "exact",
      "inputSchema": null,
      "inputExample": null,
      "successUrl": "https://example.com/success",
      "returnUrl": "https://example.com/return",
      "cancelUrl": "https://example.com/cancel",
      "createdAt": "2026-04-16T12:34:56.000Z",
      "updatedAt": "2026-04-16T12:34:56.000Z"
    }
  ],
  "hasMore": false
}
{
  "status": "error",
  "code": "AUTH_MISSING_CREDENTIALS",
  "message": "No API key or session token was provided.",
  "hint": "Include a valid API key in the Authorization header: Bearer bag_live_sk_..."
}
{
  "status": "error",
  "code": "AUTH_TENANT_MISMATCH",
  "message": "The credential does not grant access to this resource."
}
{
  "status": "error",
  "code": "RATE_LIMITED",
  "message": "Too many requests. Back off and retry.",
  "retryAfter": 60
}
{
  "status": "error",
  "code": "INTERNAL_ERROR",
  "message": "An unexpected error occurred. The incident has been logged."
}