> ## Documentation Index
> Fetch the complete documentation index at: https://developers.introw.io/llms.txt
> Use this file to discover all available pages before exploring further.

# List partners

> Returns partners for the organisation resolved from the authenticated API key.



## OpenAPI

````yaml /openapi.json get /api/v1/partners
openapi: 3.1.0
info:
  title: Introw API
  version: '2026-05-20'
  description: >-
    Customer-facing API for Introw. Manage partners, delegate commission payout
    operations to your finance software, embed the partner portal in your
    product with pre-authenticated sessions, and ingest affiliate conversions.
servers:
  - url: https://api.introw.io
  - url: https://api.staging.introw.io
security:
  - ApiKeyAuth: []
tags:
  - name: Partners
    description: >-
      Read and manage partners for the organisation associated with the
      authenticated API key.
  - name: Payouts
    description: >-
      Read and update commission payouts. Delegate approval, scheduling, and
      payment status to your ERP or accounts-payable stack.
  - name: Commission lines
    description: >-
      Create, read, update, decline, and detach commission line items. Lines can
      live in the pending pool or be attached to a payout.
  - name: Auth
    description: >-
      Create pre-authenticated partner portal sessions. Exchange a visitor email
      for a short-lived, single-use portal URL that you embed in an iframe
      inside your own product — one login, fully branded, no login screen for
      the partner.
  - name: Affiliate
    description: >-
      Ingest affiliate conversions from your backend or directly from the
      browser via affiliate.js. Every conversion is anchored to a signed,
      server-side click token (the first-party `_introw_aff` cookie),
      deduplicated, and mapped onto a campaign form submission — so attribution
      cannot be forged or double-counted.
paths:
  /api/v1/partners:
    get:
      tags:
        - Partners
      summary: List partners
      description: >-
        Returns partners for the organisation resolved from the authenticated
        API key.
      operationId: listPartners
      parameters:
        - name: limit
          in: query
          required: false
          description: Maximum number of partners to return. Defaults to 25.
          schema:
            description: Maximum number of partners to return.
            default: 25
            type: integer
            minimum: 1
            maximum: 100
        - name: cursor
          in: query
          required: false
          description: Cursor returned by a previous list response.
          schema:
            description: Cursor returned by a previous list response.
            type: string
      responses:
        '200':
          description: Partner page returned successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListPartnersResponse'
              example:
                data:
                  - id: ptn_01HVK6Y8Z8Q7J8J8J8J8J8J8J8
                    name: Acme Partners
                    domain: acme.example
                    externalCompanyId: company_123
                    externalId: partner_123
                    externalIdType: PARTNER
                    managerEmail: manager@acme.example
                    categories:
                      - Reseller
                    tierId: tier_123
                    phaseId: phase_123
                    owner: null
                    manager: null
                    partnerObjectCrmProperties:
                      name: Acme Partners
                    companyCrmProperties:
                      domain: acme.example
                    crmProperties:
                      name: Acme Partners
                    status: active
                    createdAt: '2026-05-08T12:00:00.000Z'
                    updatedAt: '2026-05-08T12:00:00.000Z'
                pagination:
                  nextCursor: null
          headers:
            x-ratelimit-limit-minute:
              description: Maximum number of requests allowed in the current minute.
              schema:
                type: string
            x-ratelimit-remaining-minute:
              description: Number of requests remaining in the current minute.
              schema:
                type: string
        '401':
          description: API key is missing, invalid, expired, or revoked.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiError'
        '403':
          description: API key does not include the partners:read scope.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiError'
        '422':
          description: Query parameters failed validation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiError'
        '429':
          description: Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiError'
        '500':
          description: Unexpected server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiError'
components:
  schemas:
    ListPartnersResponse:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              id:
                description: Introw partner identifier.
                type: string
              name:
                description: Partner display name.
                anyOf:
                  - type: string
                  - type: 'null'
              domain:
                description: Partner company domain, when known.
                anyOf:
                  - type: string
                  - type: 'null'
              externalCompanyId:
                description: >-
                  CRM company identifier associated with the partner, when
                  known.
                anyOf:
                  - type: string
                  - type: 'null'
              externalId:
                description: CRM partner object identifier, when known.
                anyOf:
                  - type: string
                  - type: 'null'
              externalIdType:
                description: >-
                  CRM object type for the partner external identifier, when
                  known.
                anyOf:
                  - type: string
                  - type: 'null'
              managerEmail:
                description: Email address for the configured partner manager, when known.
                anyOf:
                  - type: string
                  - type: 'null'
              categories:
                description: Partner category labels.
                type: array
                items:
                  type: string
              tierId:
                description: Partner tier identifier, when assigned.
                anyOf:
                  - type: string
                  - type: 'null'
              phaseId:
                description: Partner phase identifier, when assigned.
                anyOf:
                  - type: string
                  - type: 'null'
              owner:
                description: Owner user record, when assigned.
                anyOf:
                  - type: object
                    propertyNames:
                      type: string
                    additionalProperties: {}
                  - type: 'null'
              manager:
                description: Manager room visitor record, when configured.
                anyOf:
                  - type: object
                    propertyNames:
                      type: string
                    additionalProperties: {}
                  - type: 'null'
              partnerObjectCrmProperties:
                description: Raw CRM properties for the partner object, when available.
                anyOf:
                  - type: object
                    propertyNames:
                      type: string
                    additionalProperties: {}
                  - type: 'null'
              companyCrmProperties:
                description: >-
                  Raw CRM company properties associated with the partner, when
                  available.
                anyOf:
                  - type: object
                    propertyNames:
                      type: string
                    additionalProperties: {}
                  - type: 'null'
              crmProperties:
                description: Primary raw CRM properties associated with the partner.
                anyOf:
                  - type: object
                    propertyNames:
                      type: string
                    additionalProperties: {}
                  - type: 'null'
              status:
                description: Public partner lifecycle status.
                type: string
                enum:
                  - active
                  - inactive
              createdAt:
                description: ISO 8601 timestamp for when the partner was created.
                anyOf:
                  - type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                  - type: 'null'
              updatedAt:
                description: ISO 8601 timestamp for when the partner was last updated.
                type: string
                format: date-time
                pattern: >-
                  ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            required:
              - id
              - name
              - domain
              - createdAt
            additionalProperties: false
        pagination:
          type: object
          properties:
            nextCursor:
              description: >-
                Cursor for the next page, or null when there are no more
                results.
              anyOf:
                - type: string
                - type: 'null'
          required:
            - nextCursor
          additionalProperties: false
      required:
        - data
        - pagination
      additionalProperties: false
    PublicApiError:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              description: Stable machine-readable error code.
              type: string
            message:
              description: Human-readable error message.
              type: string
            details:
              description: Optional structured details for validation and debugging.
          required:
            - code
            - message
          additionalProperties: false
      required:
        - error
      additionalProperties: false
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: Introw API key shown once when the credential is created.

````