Keap Affiliate API

Keap Affiliate API — 48 operations across 28 paths on the Keap REST v2 contract, read from Keap's own published OpenAPI 3.1 document.

Operations 58

GET /rest/v1/affiliates List Affiliates #
POST /rest/v1/affiliates Create an affiliate #
GET /rest/v1/affiliates/{id} Retrieve an affiliate #
GET /rest/v1/affiliates/{affiliateId}/payments List Affiliate payments #
GET /rest/v1/affiliates/{affiliateId}/clawbacks List Affiliate clawbacks #
GET /rest/v1/affiliates/summaries List affiliate summaries #
GET /rest/v1/affiliates/programs List Commission Programs #
GET /rest/v1/affiliates/model Retrieve Affiliate Model #
GET /rest/v1/affiliates/commissions List Commissions #
GET /rest/v2/affiliates List Affiliates #
POST /rest/v2/affiliates Create an Affiliate #
POST /rest/v2/affiliates/{id}:removeFromProgram Remove an Affiliate from a Commission Program #
POST /rest/v2/affiliates/{id}:assignToProgram Assign Affiliate to Commission program #
POST /rest/v2/affiliates/model/customFields Create an Affiliate Custom Field #
GET /rest/v2/affiliates/model/customFields/tabs List Affiliate Custom Field Tabs #
POST /rest/v2/affiliates/model/customFields/tabs Create an Affiliate Custom Field Tab #
GET /rest/v2/affiliates/model/customFields/groups List Affiliate Custom Field Groups #
POST /rest/v2/affiliates/model/customFields/groups Create an Affiliate Custom Field Group #
GET /rest/v2/affiliates/commissionPrograms List Affiliate Commission Programs #
POST /rest/v2/affiliates/commissionPrograms Create an Affiliate Commission Program #
POST /rest/v2/affiliates/commissionPrograms/{commission_id}:removeSubscriptionCommission Remove a Subscription from a Commission Program #
POST /rest/v2/affiliates/commissionPrograms/{commission_id}:removeProductCommission Remove a Product from a Commission Program #
POST /rest/v2/affiliates/commissionPrograms/subscriptionCommissionPrograms/{commission_program_id} Assign a Subscription Commission Program #
PATCH /rest/v2/affiliates/commissionPrograms/subscriptionCommissionPrograms/{commission_program_id} Update a Subscription Commission Program #
POST /rest/v2/affiliates/commissionPrograms/resources Create Commission Program Resource #
POST /rest/v2/affiliates/commissionPrograms/productCommissionPrograms/{commission_program_id} Assign a Product Commission Program #
PATCH /rest/v2/affiliates/commissionPrograms/productCommissionPrograms/{commission_program_id} Update a Product Commission Program #
POST /rest/v2/affiliates/commissionPrograms/defaultCommissionPrograms/{commission_program_id} Create a Default Commission Program #
PATCH /rest/v2/affiliates/commissionPrograms/defaultCommissionPrograms/{commission_program_id} Update a Default Commission Program #
GET /rest/v2/affiliates/{id} Retrieve an Affiliate #
DELETE /rest/v2/affiliates/{id} Delete Affiliate #
PATCH /rest/v2/affiliates/{id} Update an Affiliate #
DELETE /rest/v2/affiliates/model/customFields/{custom_field_id} Delete a Custom Field #
PATCH /rest/v2/affiliates/model/customFields/{custom_field_id} Update a Custom Field #
GET /rest/v2/affiliates/model/customFields/tabs/{tab_id} Retrieve an Affiliate Custom Field Tab #
DELETE /rest/v2/affiliates/model/customFields/tabs/{tab_id} Delete an Affiliate Custom Field Tab #
PATCH /rest/v2/affiliates/model/customFields/tabs/{tab_id} Update an Affiliate Custom Field Tab #
GET /rest/v2/affiliates/model/customFields/groups/{group_id} Retrieve an Affiliate Custom Field Group #
DELETE /rest/v2/affiliates/model/customFields/groups/{group_id} Delete an Affiliate Custom Field Group #
PATCH /rest/v2/affiliates/model/customFields/groups/{group_id} Update an Affiliate Custom Field Group #
GET /rest/v2/affiliates/commissionPrograms/{commission_program_id} Retrieve a Commission Program #
DELETE /rest/v2/affiliates/commissionPrograms/{commission_program_id} Delete a Commission Program #
PATCH /rest/v2/affiliates/commissionPrograms/{commission_program_id} Update an Affiliate Commission Program #
DELETE /rest/v2/affiliates/commissionPrograms/resources/{resource_id} Remove Commission Program Resource #
PATCH /rest/v2/affiliates/commissionPrograms/resources/{resource_id} Update Commission Program Resource #
GET /rest/v2/affiliates/{affiliate_id}:commissions Retrieve Affiliate Commissions #
GET /rest/v2/affiliates/{affiliate_id}/referrals Retrieve Affiliate Referrals #
GET /rest/v2/affiliates/{affiliate_id}/payments List Affiliate Payments #
GET /rest/v2/affiliates/{affiliate_id}/commissionTotal Retrieve Affiliate Commission Earned and View LedgerURl for portal #
GET /rest/v2/affiliates/summaries List Affiliate Summaries #
GET /rest/v2/affiliates/model Retrieve Affiliate Model #
GET /rest/v2/affiliates/commissionPrograms/{commission_program_id}/resources Retrieve Commission Program Resources #

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/keap-affiliate-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

keap-affiliate-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Keap Affiliate API
  contact:
    name: Keap
    url: https://developer.keap.com/get-support
    email: api.keap@thryv.com
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  termsOfService: https://www.thryv.com/terms-of-use
  version: '1.0'
  description: 'Operations tagged Affiliate across 2 of this provider''s published API definitions: keap-v1-openapi.json, keap-v2-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.infusionsoft.com/crm
security:
- oauth2: []
tags:
- name: Affiliate
  description: Affiliates-Endpoint
paths:
  /rest/v1/affiliates:
    get:
      tags:
      - Affiliate
      summary: List Affiliates
      description: Retrieves a list of all affiliates
      operationId: listAffiliates
      parameters:
      - name: name
        in: query
        description: Optional affiliate name to query on
        required: false
        schema:
          type: string
      - name: code
        in: query
        description: Optional affiliate parent ID to query on
        required: false
        schema:
          type: string
      - name: parent_id
        in: query
        description: Optional affiliate code to query on
        required: false
        schema:
          type: string
      - name: contact_id
        in: query
        description: Optional contact ID to query on
        required: false
        schema:
          type: string
      - name: program_id
        in: query
        description: Optional affiliate program ID to query on
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: Optional affiliate status to query on
        required: false
        schema:
          type: string
          enum:
          - active
          - inactive
      - name: order
        in: query
        description: Attribute to order items by
        required: false
        schema:
          type: string
          enum:
          - id
          - name
      - name: order_direction
        in: query
        description: How to order the data i.e. ascending (A-Z) or descending (Z-A)
        required: false
        schema:
          type: string
          enum:
          - ASCENDING
          - DESCENDING
      - name: offset
        in: query
        description: Count to offset the returned results by
        required: false
        schema:
          type: integer
          format: int32
        example: 0
      - name: limit
        in: query
        description: Sets a beginning range of items to return
        required: false
        schema:
          type: integer
          format: int32
        example: 0
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '501':
          description: Not Implemented
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '406':
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '412':
          description: Precondition Failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AffiliateList'
    post:
      tags:
      - Affiliate
      summary: Create an affiliate
      description: Create a single affiliate
      operationId: createAffiliate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateAffiliate'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '501':
          description: Not Implemented
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '406':
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '412':
          description: Precondition Failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Affiliate'
    servers:
    - url: https://api.infusionsoft.com/crm
  /rest/v1/affiliates/{id}:
    get:
      tags:
      - Affiliate
      summary: Retrieve an affiliate
      description: Retrieve a single affiliate
      operationId: getAffiliate
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '501':
          description: Not Implemented
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '406':
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '412':
          description: Precondition Failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Affiliate'
    servers:
    - url: https://api.infusionsoft.com/crm
  /rest/v1/affiliates/{affiliateId}/payments:
    get:
      tags:
      - Affiliate
      summary: List Affiliate payments
      description: Retrieves a list of all affiliate payments
      operationId: listPayments
      parameters:
      - name: affiliateId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: queryCommand
        in: query
        required: true
        schema:
          $ref: '#/components/schemas/RestAffiliatePaymentQueryCommand'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '501':
          description: Not Implemented
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '406':
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '412':
          description: Precondition Failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AffiliatePaymentList'
    servers:
    - url: https://api.infusionsoft.com/crm
  /rest/v1/affiliates/{affiliateId}/clawbacks:
    get:
      tags:
      - Affiliate
      summary: List Affiliate clawbacks
      description: Retrieves a list of all affiliate clawbacks
      operationId: listAffiliateClawbacks
      parameters:
      - name: affiliateId
        in: path
        required: true
        schema:
          type: string
      - name: since
        in: query
        description: Optional inclusive start date
        required: false
        schema:
          type: string
      - name: until
        in: query
        description: Optional inclusive end date
        required: false
        schema:
          type: string
      - name: order
        in: query
        description: Attribute to order items by
        required: false
        schema:
          type: string
          enum:
          - DATE_EARNED
      - name: order_direction
        in: query
        description: How to order the data i.e. ascending (A-Z) or descending (Z-A)
        required: false
        schema:
          type: string
          enum:
          - ASCENDING
          - DESCENDING
      - name: offset
        in: query
        description: Count to offset the returned results by
        required: false
        schema:
          type: integer
          format: int32
        example: 0
      - name: limit
        in: query
        description: Sets a beginning range of items to return
        required: false
        schema:
          type: integer
          format: int32
        example: 0
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '501':
          description: Not Implemented
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '406':
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '412':
          description: Precondition Failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AffiliateClawbackList'
    servers:
    - url: https://api.infusionsoft.com/crm
  /rest/v1/affiliates/summaries:
    get:
      tags:
      - Affiliate
      summary: List affiliate summaries
      description: Retrieves a list of affiliate summaries
      operationId: listSummaries
      parameters:
      - name: affiliate_ids
        in: query
        description: Ids of the affiliates you would like a summary for
        required: true
        schema:
          type: array
          items:
            type: integer
            format: int64
      - name: order
        in: query
        description: Attribute to order items by
        required: false
        schema:
          type: string
          enum:
          - affiliate_id
          - amount_earned
          - balance
          - clawbacks
      - name: order_direction
        in: query
        description: How to order the data i.e. ascending (A-Z) or descending (Z-A)
        required: false
        schema:
          type: string
          enum:
          - ASCENDING
          - DESCENDING
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '501':
          description: Not Implemented
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '406':
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '412':
          description: Precondition Failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AffiliateSummaryList'
    servers:
    - url: https://api.infusionsoft.com/crm
  /rest/v1/affiliates/redirectlinks:
    get:
      tags:
      - Affiliate
      summary: List Affiliate Redirects
      description: Retrieves a list of all affiliate redirects
      operationId: listAffiliateRedirectLinks
      parameters:
      - name: affiliate_id
        in: query
        description: Affiliate ID to search by
        required: false
        schema:
          type: string
      - name: order
        in: query
        description: Attribute to order items by
        required: false
        schema:
          type: string
          enum:
          - id
          - name
      - name: order_direction
        in: query
        description: How to order the data i.e. ascending (A-Z) or descending (Z-A)
        required: false
        schema:
          type: string
          enum:
          - ASCENDING
          - DESCENDING
      - name: offset
        in: query
        description: Count to offset the returned results by
        required: false
        schema:
          type: integer
          format: int32
        example: 0
      - name: limit
        in: query
        description: Sets a beginning range of items to return
        required: false
        schema:
          type: integer
          format: int32
        example: 0
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '501':
          description: Not Implemented
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '406':
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '412':
          description: Precondition Failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RedirectList'
    servers:
    - url: https://api.infusionsoft.com/crm
  /rest/v1/affiliates/programs:
    get:
      tags:
      - Affiliate
      summary: List Commission Programs
      description: Retrieve a list of Commission Programs
      operationId: listPrograms
      parameters:
      - name: affiliate_id
        in: query
        description: Id of the affiliate you would like programs for
        required: false
        schema:
          type: integer
          format: int64
        example: 0
      - name: order
        in: query
        description: Attribute to order items by
        required: false
        schema:
          type: string
          enum:
          - id
          - name
          - priority
      - name: order_direction
        in: query
        description: How to order the data i.e. ascending (A-Z) or descending (Z-A)
        required: false
        schema:
          type: string
          enum:
          - ASCENDING
          - DESCENDING
      - name: offset
        in: query
        description: Count to offset the returned results by
        required: false
        schema:
          type: integer
          format: int32
        example: 0
      - name: limit
        in: query
        description: Sets a beginning range of items to return
        required: false
        schema:
          type: integer
          format: int32
        example: 0
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '501':
          description: Not Implemented
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '406':
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '412':
          description: Precondition Failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AffiliateProgramList'
    servers:
    - url: https://api.infusionsoft.com/crm
  /rest/v1/affiliates/model:
    get:
      tags:
      - Affiliate
      summary: Retrieve Affiliate Model
      description: Get the custom fields for the Affiliate object
      operationId: retrieveAffiliateModel
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '501':
          description: Not Implemented
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '406':
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '412':
          description: Precondition Failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObjectModel'
    servers:
    - url: https://api.infusionsoft.com/crm
  /rest/v1/affiliates/commissions:
    get:
      tags:
      - Affiliate
      summary: List Commissions
      description: Retrieve a list of Commissions based on Affiliate or Date Range
      operationId: listCommissions
      parameters:
      - name: since
        in: query
        description: Date to start searching from ex. `2017-01-01T22:17:59.039Z`
        required: false
        schema:
          type: string
      - name: until
        in: query
        description: Date to search to ex. `2017-01-01T22:17:59.039Z`
        required: false
        schema:
          type: string
      - name: order
        in: query
        description: Attribute to order items by
        required: false
        schema:
          type: string
          enum:
          - DATE_EARNED
      - name: order_direction
        in: query
        description: How to order the data i.e. ascending (A-Z) or descending (Z-A)
        required: false
        schema:
          type: string
          enum:
          - ASCENDING
          - DESCENDING
      - name: limit
        in: query
        description: Sets a total of items to return
        required: false
        schema:
          type: integer
          format: int32
        example: 0
      - name: offset
        in: query
        description: Sets a beginning range of items to return
        required: false
        schema:
          type: integer
          format: int32
        example: 0
      - name: affiliateId
        in: query
        description: Affiliate to retrieve commissions for
        required: false
        schema:
          type: integer
          format: int64
        example: 0
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '501':
          description: Not Implemented
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '406':
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '412':
          description: Precondition Failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelAndView'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AffiliateCommissionList'
    servers:
    - url: https://api.infusionsoft.com/crm
  /rest/v2/affiliates:
    get:
      tags:
      - Affiliate
      summary: List Affiliates
      description: Retrieves a list of Affiliates
      operationId: listAffiliate
      parameters:
      - name: filter
        in: query
        description: 'Filter to apply, allowed fields are:

          - (String) `id` - Allowable operators: "==","<=", "<", ">=", ">", "!="

          - (String) `name` - Wildcard matching allowed

          - (String) `contact_id`

          - (String) `referral_contact_id`

          - (String) `status`

          - (String) `code`

          - (Custom) Custom field names - Reference by field name (e.g., `tier`, `region`)


          You will need to apply the `==` operator to check the equality of one of the filters with the

          value you want to match, in the encoded form `%3D%3D`. For the filters listed above,

          here are some examples:

          - `filter=id%3C123`

          - `filter=id%3D%3D123`

          - `filter=name%3D%3DBob`

          - `filter=contact_id%3D%3D567`

          - `filter=contact_id%3D%3D123%3Bcode%3D%3D567`


          For fields which allow wildcard matching, you may use the * wildcard character (or its encoded form %2A)

          for case-insensitive partial matching on text fields. Example 

# --- truncated at 32 KB (195 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/keap/refs/heads/main/openapi/keap-affiliate-api-openapi.yml