Dub

Dub Payouts API

The Payouts API from Dub — 1 operation(s) for payouts.

Operations 1

GET /payouts List all payouts #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/dub-payouts-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

dub-payouts-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Dub Analytics Payouts API
  description: Dub is the modern link attribution platform for short links, conversion tracking, and affiliate programs.
  version: 0.0.1
  contact:
    name: Dub Support
    email: support@dub.co
    url: https://dub.co/support
  license:
    name: AGPL-3.0 license
    url: https://github.com/dubinc/dub/blob/main/LICENSE.md
servers:
- url: https://api.dub.co
  description: Production API
tags:
- name: Payouts
paths:
  /payouts:
    get:
      operationId: listPayouts
      x-speakeasy-name-override: list
      summary: List all payouts
      description: Retrieve a paginated list of payouts for your partner program.
      tags:
      - Payouts
      security:
      - token: []
      parameters:
      - in: query
        name: status
        schema:
          description: Filter the list of payouts by their corresponding status.
          type: string
          enum:
          - pending
          - processing
          - processed
          - sent
          - completed
          - failed
          - canceled
        description: Filter the list of payouts by their corresponding status.
      - in: query
        name: partnerId
        schema:
          description: Filter the list of payouts by the associated partner. When specified, takes precedence over `tenantId`.
          type: string
        description: Filter the list of payouts by the associated partner. When specified, takes precedence over `tenantId`.
      - in: query
        name: tenantId
        schema:
          description: Filter the list of payouts by the associated partner's `tenantId` (their unique ID within your database).
          type: string
        description: Filter the list of payouts by the associated partner's `tenantId` (their unique ID within your database).
      - in: query
        name: invoiceId
        schema:
          description: Filter the list of payouts by invoice ID (the unique ID of the invoice you receive for each batch payout you process on Dub). Pending payouts will not have an invoice ID.
          type: string
        description: Filter the list of payouts by invoice ID (the unique ID of the invoice you receive for each batch payout you process on Dub). Pending payouts will not have an invoice ID.
      - in: query
        name: sortBy
        schema:
          default: amount
          description: The field to sort the list of payouts by.
          type: string
          enum:
          - amount
          - initiatedAt
          - paidAt
        description: The field to sort the list of payouts by.
      - in: query
        name: sortOrder
        schema:
          default: desc
          description: The sort order for the list of payouts.
          type: string
          enum:
          - asc
          - desc
        description: The sort order for the list of payouts.
      - in: query
        name: page
        schema:
          description: The page number for pagination.
          example: 1
          deprecated: false
          type: number
          exclusiveMinimum: 0
        description: The page number for pagination.
      - in: query
        name: pageSize
        schema:
          default: 100
          description: The number of items per page.
          example: 50
          type: number
          maximum: 100
          exclusiveMinimum: 0
        description: The number of items per page.
      responses:
        '200':
          description: The list of payouts.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                    invoiceId:
                      type:
                      - string
                      - 'null'
                    amount:
                      type: number
                    currency:
                      type: string
                    status:
                      type: string
                      enum:
                      - pending
                      - processing
                      - processed
                      - sent
                      - completed
                      - failed
                      - canceled
                    description:
                      type:
                      - string
                      - 'null'
                    periodStart:
                      type:
                      - string
                      - 'null'
                    periodEnd:
                      type:
                      - string
                      - 'null'
                    createdAt:
                      type: string
                    updatedAt:
                      type: string
                    initiatedAt:
                      type:
                      - string
                      - 'null'
                    paidAt:
                      type:
                      - string
                      - 'null'
                    failureReason:
                      type:
                      - string
                      - 'null'
                    mode:
                      type:
                      - string
                      - 'null'
                      enum:
                      - internal
                      - external
                    method:
                      type:
                      - string
                      - 'null'
                      enum:
                      - connect
                      - stablecoin
                      - paypal
                    traceId:
                      type:
                      - string
                      - 'null'
                    partner:
                      type: object
                      properties:
                        id:
                          type: string
                          description: The partner's unique ID on Dub.
                        name:
                          type: string
                          maxLength: 190
                          description: The partner's full legal name.
                        email:
                          description: The partner's email address. Should be a unique value across Dub.
                          type:
                          - string
                          - 'null'
                          maxLength: 190
                        image:
                          description: The partner's avatar image.
                          type:
                          - string
                          - 'null'
                        defaultPayoutMethod:
                          description: 'The partner''s default payout method. Connect: Bank account payouts via Stripe Connect; Stablecoin: USDC payouts directly to a crypto wallet; PayPal: Payouts via PayPal'
                          type:
                          - string
                          - 'null'
                          enum:
                          - connect
                          - stablecoin
                          - paypal
                        payoutsEnabledAt:
                          description: The date when the partner enabled payouts.
                          type:
                          - string
                          - 'null'
                        country:
                          description: The partner's country (required for tax purposes).
                          type:
                          - string
                          - 'null'
                        groupId:
                          description: The partner's group ID on Dub.
                          type:
                          - string
                          - 'null'
                        tenantId:
                          description: The partner's unique ID within your database. Can be useful for associating the partner with a user in your database and retrieving/update their data in the future.
                          type:
                          - string
                          - 'null'
                      required:
                      - id
                      - name
                      - email
                      - image
                      - defaultPayoutMethod
                      - payoutsEnabledAt
                      - country
                      - tenantId
                      additionalProperties: false
                    user:
                      type:
                      - object
                      - 'null'
                      properties:
                        id:
                          type: string
                        name:
                          type:
                          - string
                          - 'null'
                        email:
                          type:
                          - string
                          - 'null'
                        image:
                          type:
                          - string
                          - 'null'
                      required:
                      - id
                      - name
                      - email
                      - image
                      additionalProperties: false
                  required:
                  - id
                  - invoiceId
                  - amount
                  - currency
                  - status
                  - periodStart
                  - periodEnd
                  - createdAt
                  - initiatedAt
                  - paidAt
                  - mode
                  - method
                  - partner
                  additionalProperties: false
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '409':
          $ref: '#/components/responses/409'
        '410':
          $ref: '#/components/responses/410'
        '422':
          $ref: '#/components/responses/422'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
components:
  responses:
    '400':
      description: The server cannot or will not process the request due to something that is perceived to be a client error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing).
      content:
        application/json:
          schema:
            x-speakeasy-name-override: BadRequest
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                    - bad_request
                    description: A short code indicating the error code returned.
                    example: bad_request
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: A link to our documentation with more details about this error code
                    example: https://dub.co/docs/api-reference/errors#bad-request
                required:
                - code
                - message
            required:
            - error
    '401':
      description: Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
      content:
        application/json:
          schema:
            x-speakeasy-name-override: Unauthorized
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                    - unauthorized
                    description: A short code indicating the error code returned.
                    example: unauthorized
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: A link to our documentation with more details about this error code
                    example: https://dub.co/docs/api-reference/errors#unauthorized
                required:
                - code
                - message
            required:
            - error
    '422':
      description: The request was well-formed but was unable to be followed due to semantic errors.
      content:
        application/json:
          schema:
            x-speakeasy-name-override: UnprocessableEntity
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                    - unprocessable_entity
                    description: A short code indicating the error code returned.
                    example: unprocessable_entity
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: A link to our documentation with more details about this error code
                    example: https://dub.co/docs/api-reference/errors#unprocessable-entity
                required:
                - code
                - message
            required:
            - error
    '404':
      description: The server cannot find the requested resource.
      content:
        application/json:
          schema:
            x-speakeasy-name-override: NotFound
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                    - not_found
                    description: A short code indicating the error code returned.
                    example: not_found
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: A link to our documentation with more details about this error code
                    example: https://dub.co/docs/api-reference/errors#not-found
                required:
                - code
                - message
            required:
            - error
    '429':
      description: The user has sent too many requests in a given amount of time ("rate limiting")
      content:
        application/json:
          schema:
            x-speakeasy-name-override: RateLimitExceeded
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                    - rate_limit_exceeded
                    description: A short code indicating the error code returned.
                    example: rate_limit_exceeded
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: A link to our documentation with more details about this error code
                    example: https://dub.co/docs/api-reference/errors#rate-limit_exceeded
                required:
                - code
                - message
            required:
            - error
    '409':
      description: This response is sent when a request conflicts with the current state of the server.
      content:
        application/json:
          schema:
            x-speakeasy-name-override: Conflict
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                    - conflict
                    description: A short code indicating the error code returned.
                    example: conflict
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: A link to our documentation with more details about this error code
                    example: https://dub.co/docs/api-reference/errors#conflict
                required:
                - code
                - message
            required:
            - error
    '403':
      description: The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401 Unauthorized, the client's identity is known to the server.
      content:
        application/json:
          schema:
            x-speakeasy-name-override: Forbidden
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                    - forbidden
                    description: A short code indicating the error code returned.
                    example: forbidden
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: A link to our documentation with more details about this error code
                    example: https://dub.co/docs/api-reference/errors#forbidden
                required:
                - code
                - message
            required:
            - error
    '500':
      description: The server has encountered a situation it does not know how to handle.
      content:
        application/json:
          schema:
            x-speakeasy-name-override: InternalServerError
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                    - internal_server_error
                    description: A short code indicating the error code returned.
                    example: internal_server_error
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: A link to our documentation with more details about this error code
                    example: https://dub.co/docs/api-reference/errors#internal-server_error
                required:
                - code
                - message
            required:
            - error
    '410':
      description: This response is sent when the requested content has been permanently deleted from server, with no forwarding address.
      content:
        application/json:
          schema:
            x-speakeasy-name-override: InviteExpired
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                    - invite_expired
                    description: A short code indicating the error code returned.
                    example: invite_expired
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: A link to our documentation with more details about this error code
                    example: https://dub.co/docs/api-reference/errors#invite-expired
                required:
                - code
                - message
            required:
            - error
  securitySchemes:
    token:
      type: http
      description: Default authentication mechanism
      scheme: bearer
      x-speakeasy-example: DUB_API_KEY