GET
/
customers
import { Dub } from "dub";

const dub = new Dub({
  token: "DUB_API_KEY",
});

async function run() {
  const result = await dub.customers.list();

  // Handle the result
  console.log(result);
}

run();
[
  {
    "id": "<string>",
    "externalId": "<string>",
    "name": "<string>",
    "email": "<string>",
    "avatar": "<string>",
    "country": "<string>",
    "createdAt": "<string>",
    "link": {
      "id": "<string>",
      "domain": "<string>",
      "key": "<string>",
      "shortLink": "<string>",
      "programId": "<string>"
    },
    "programId": "<string>",
    "partner": {
      "id": "<string>",
      "name": "<string>",
      "email": "<string>",
      "image": "<string>"
    },
    "discount": {
      "id": "<string>",
      "amount": 123,
      "type": "percentage",
      "maxDuration": 123,
      "description": "<string>",
      "couponId": "<string>",
      "couponTestId": "<string>",
      "partnersCount": 123
    }
  }
]

Authorizations

Authorization
string
header
required

Default authentication mechanism

Query Parameters

email
string

A case-sensitive filter on the list based on the customer's email field. The value must be a string. Takes precedence over externalId.

externalId
string

A case-sensitive filter on the list based on the customer's externalId field. The value must be a string. Takes precedence over search.

A search query to filter customers by email, externalId, or name. If email or externalId is provided, this will be ignored.

includeExpandedFields
boolean

Whether to include expanded fields on the customer (link, partner, discount).

page
number
default:1

The page number for pagination.

Required range: x > 0
Example:

1

pageSize
number
default:100

The number of items per page.

Required range: 0 < x <= 100
Example:

50

Response

200
application/json
The list of customers.

The response is of type object[].