ClickFunnels Fulfillment API

> Fulfillments allow fulfilling orders and managing shipments. Please refer to [our Fulfillments guide](https://developers.myclickfunnels.com/docs/fulfillments) for more information.

Operations 6

GET /workspaces/{workspace_id}/fulfillments List Fulfillments #
POST /workspaces/{workspace_id}/fulfillments Create Fulfillment #
GET /fulfillments/{id} Fetch Fulfillment #
PUT /fulfillments/{id} Update Fulfillment #
DELETE /fulfillments/{id} Remove Fulfillment #
POST /fulfillments/{id}/cancel Cancel a Fulfillment #

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/clickfunnels-fulfillment-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

clickfunnels-fulfillment-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ClickFunnels Fulfillment API
  termsOfService: https://www.clickfunnels.com/terms-of-service
  contact:
    name: ClickFunnels API Team
    url: https://developers.myclickfunnels.com
  x-logo:
    url: https://statics.myclickfunnels.com/image/1126065/file/31edf05760fafe41a82f16a668ab251f.png
  description: 'The ClickFunnels REST API that powers webhooks, native integrations, and Zapier lets you manage your ClickFunnels data, automate your workflows, and recreate ClickFunnels functionality in your own apps.

    '
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
  version: 2.0.0
servers:
- url: https://{subdomain}.myclickfunnels.com/api/v2
  description: ClickFunnels API
  variables:
    subdomain:
      default: myworkspace
security:
- BearerAuth: []
tags:
- name: Fulfillment
  description: '> Fulfillments allow fulfilling orders and managing shipments.


    Please refer to [our Fulfillments guide](https://developers.myclickfunnels.com/docs/fulfillments) for more information.

    '
paths:
  /workspaces/{workspace_id}/fulfillments:
    get:
      tags:
      - Fulfillment
      summary: List Fulfillments
      description: List all fulfillments for your workspace. You will find detailed information about fulfilling orders is in [our Fulfillments guide](https://developers.myclickfunnels.com/docs/fulfillments).
      operationId: listFulfillments
      parameters:
      - name: workspace_id
        in: path
        required: true
        schema:
          type: string
      - $ref: '#/components/parameters/after'
      - $ref: '#/components/parameters/sort_order'
      - $ref: '#/components/parameters/sort_property'
      responses:
        '200':
          description: OK
          headers:
            Pagination-Next:
              $ref: '#/components/headers/PaginationNext'
            Link:
              $ref: '#/components/headers/Link'
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FulfillmentAttributes'
              example:
              - id: 2
                public_id: DhLZfz
                workspace_id: 42000
                contact_id: 94
                status: fulfilled
                tracking_url: https://usps.com/track/1234567890
                shipping_provider: USPS
                tracking_code: '1234567890'
                location_id: 3
                fulfillment_number: 2
                created_at: '2025-01-01T00:00:00.000Z'
                updated_at: '2025-01-01T00:00:00.000Z'
                included_invoices_line_items:
                - id: 2
                  public_id: OYMAYq
                  fulfillment_id: 2
                  quantity: 1
                  invoices_line_item_id: 126
              - id: 3
                public_id: VyJdGW
                workspace_id: 42000
                contact_id: 96
                status: fulfilled
                tracking_url: https://usps.com/track/1234567890
                shipping_provider: USPS
                tracking_code: '1234567890'
                location_id: 4
                fulfillment_number: 3
                created_at: '2025-01-01T00:00:00.000Z'
                updated_at: '2025-01-01T00:00:00.000Z'
                included_invoices_line_items:
                - id: 3
                  public_id: fYmGhF
                  fulfillment_id: 3
                  quantity: 1
                  invoices_line_item_id: 9
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
              example:
                error: API key missing or invalid
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Not found - This usually happens when you try to access a record that does not exist in your account. It can also happen when the provided parent record is missing, e.g. you have put in a non-existent Workspaces parent ID.
              example:
                error: 'Not found: Record missing'
    post:
      tags:
      - Fulfillment
      summary: Create Fulfillment
      description: Fulfill an order or a part of an order. More information in [our Fulfillments guide](https://developers.myclickfunnels.com/docs/fulfillments).
      operationId: createFulfillments
      parameters:
      - name: workspace_id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        description: Information about a new Fulfillment
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                fulfillment:
                  type: object
                  $ref: '#/components/schemas/FulfillmentParameters'
            example:
              fulfillment:
                contact_id: 8
                tracking_url: https://usps.com/track/1234567890
                shipping_provider: USPS
                tracking_code: '1234567890'
                location_id: 1
                ignore_out_of_stock: true
                notify_customer: true
                included_orders_invoices_line_items_attributes:
                - invoices_line_item_id: 1
                  quantity: 1
                - invoices_line_item_id: 2
                  quantity: 2
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FulfillmentAttributes'
              example:
                id: 5
                public_id: skKpBz
                workspace_id: 42000
                contact_id: 100
                status: fulfilled
                tracking_url: https://usps.com/track/1234567890
                shipping_provider: USPS
                tracking_code: '1234567890'
                location_id: 6
                fulfillment_number: 5
                created_at: '2025-01-01T00:00:00.000Z'
                updated_at: '2025-01-01T00:00:00.000Z'
                included_invoices_line_items:
                - id: 5
                  public_id: ELzmHF
                  fulfillment_id: 5
                  quantity: 1
                  invoices_line_item_id: 13
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
              example:
                error: 'Bad request: HTTP body must be valid JSON'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
              example:
                error: API key missing or invalid
  /fulfillments/{id}:
    get:
      tags:
      - Fulfillment
      summary: Fetch Fulfillment
      description: Retrieve a specific fulfillment in the current workspace
      operationId: getFulfillments
      parameters:
      - $ref: '#/components/parameters/id'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FulfillmentAttributes'
              example:
                id: 4
                public_id: hBjJrH
                workspace_id: 42000
                contact_id: 98
                status: fulfilled
                tracking_url: https://usps.com/track/1234567890
                shipping_provider: USPS
                tracking_code: '1234567890'
                location_id: 5
                fulfillment_number: 4
                created_at: '2025-01-01T00:00:00.000Z'
                updated_at: '2025-01-01T00:00:00.000Z'
                included_invoices_line_items:
                - id: 4
                  public_id: IVZNRO
                  fulfillment_id: 4
                  quantity: 1
                  invoices_line_item_id: 11
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
              example:
                error: API key missing or invalid
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
              example:
                error: 'Not found: Record missing'
    put:
      tags:
      - Fulfillment
      summary: Update Fulfillment
      description: Update a specific fulfillment.
      operationId: updateFulfillments
      parameters:
      - $ref: '#/components/parameters/id'
      requestBody:
        description: Information about updated fields in Fulfillment
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                fulfillment:
                  type: object
                  $ref: '#/components/schemas/FulfillmentParametersUpdate'
            example:
              fulfillment:
                tracking_url: https://usps.com/track/1234567890
                shipping_provider: USPS
                tracking_code: '1234567890'
                notify_customer: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FulfillmentAttributes'
              example:
                id: 6
                public_id: ewrCzq
                workspace_id: 42000
                contact_id: 102
                status: fulfilled
                tracking_url: https://usps.com/track/1234567890
                shipping_provider: USPS
                tracking_code: '1234567890'
                location_id: 7
                fulfillment_number: 6
                created_at: '2025-01-01T00:00:00.000Z'
                updated_at: '2025-01-01T00:00:00.000Z'
                included_invoices_line_items:
                - id: 6
                  public_id: iUkCru
                  fulfillment_id: 6
                  quantity: 1
                  invoices_line_item_id: 15
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
              example:
                error: 'Bad request: HTTP body must be valid JSON'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
              example:
                error: API key missing or invalid
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
              example:
                error: 'Not found: Record missing'
    delete:
      tags:
      - Fulfillment
      summary: Remove Fulfillment
      description: Remove Fulfillment
      operationId: removeFulfillments
      parameters:
      - $ref: '#/components/parameters/id'
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
              example:
                error: API key missing or invalid
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
              example:
                error: 'Not found: Record missing'
  /fulfillments/{id}/cancel:
    post:
      tags:
      - Fulfillment
      summary: Cancel a Fulfillment
      description: This will cancel a Fulfillment. A Fulfillment can only be cancelled when it's in a "fulfilled" state. The "cancelled" state is final.
      operationId: cancelFulfillments
      parameters:
      - $ref: '#/components/parameters/id'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FulfillmentAttributes'
              example:
                id: 1
                public_id: dcbmDy
                workspace_id: 42000
                contact_id: 8
                status: cancelled
                tracking_url: https://usps.com/track/1234567890
                shipping_provider: USPS
                tracking_code: '1234567890'
                location_id: 1
                fulfillment_number: 1
                created_at: '2025-01-01T00:00:00.000Z'
                updated_at: '2025-01-01T00:00:00.000Z'
                included_invoices_line_items:
                - id: 1
                  public_id: PYvAJe
                  fulfillment_id: 1
                  quantity: 1
                  invoices_line_item_id: 125
        '404':
          description: Not Found
        '409':
          description: Conflict - occurs if product is already cancelled.
        '422':
          description: Unprocessable Entity
components:
  schemas:
    FulfillmentParameters:
      type: object
      title: Fulfillments
      description: Fulfillments
      required:
      - contact_id
      - location_id
      - included_orders_invoices_line_items_attributes
      properties:
        contact_id:
          type: integer
          description: The contact that made the order that is being fulfilled.
        tracking_url:
          type:
          - string
          - 'null'
          description: Tracking URL
        shipping_provider:
          type:
          - string
          - 'null'
          description: Shipping Provider
        tracking_code:
          type:
          - string
          - 'null'
          description: Tracking Code
        location_id:
          type: integer
          description: The location that the fulfillment is being fulfilled from
        ignore_out_of_stock:
          type: boolean
          description: Create a fulfillment despite the item being out of stock.
        notify_customer:
          type: boolean
          description: Send an email to the customer when the fulfillment is created. Will use workspace default behavior if left unset.
        included_orders_invoices_line_items_attributes:
          type: array
          description: The orders invoices line items to fulfill as part of this fulfillment.
          items:
            type: object
            properties:
              invoices_line_item_id:
                type: integer
                description: The orders invoice line item to fulfill
              quantity:
                type: integer
                description: The quantity to fulfill
      example:
        fulfillment:
          contact_id: 8
          tracking_url: https://usps.com/track/1234567890
          shipping_provider: USPS
          tracking_code: '1234567890'
          location_id: 1
          ignore_out_of_stock: true
          notify_customer: true
          included_orders_invoices_line_items_attributes:
          - invoices_line_item_id: 1
            quantity: 1
          - invoices_line_item_id: 2
            quantity: 2
    FulfillmentAttributes:
      type: object
      title: Fulfillments
      description: Fulfillments
      properties:
        id:
          type: integer
          description: Fulfillment ID
        public_id:
          type:
          - string
          - 'null'
          description: The fulfillment ID that would be visible to the customer within the CF app
        workspace_id:
          type: integer
          description: The workspace that the fulfillment belongs to
        contact_id:
          type: integer
          description: The contact that made the order that is being fulfilled.
        status:
          type: string
          enum:
          - cancelled
          - fulfilled
          - restocked
          description: The status of the fulfillment
        tracking_url:
          type:
          - string
          - 'null'
          description: Tracking URL
        shipping_provider:
          type:
          - string
          - 'null'
          description: Shipping Provider
        tracking_code:
          type:
          - string
          - 'null'
          description: Tracking Code
        location_id:
          type: integer
          description: The location that the fulfillment is being fulfilled from
        fulfillment_number:
          type:
          - integer
          - 'null'
          description: An auto-generated number of the fulfillment
        created_at:
          type:
          - string
          - 'null'
          format: date-time
          description: Created
        updated_at:
          type:
          - string
          - 'null'
          format: date-time
          description: Updated
        included_invoices_line_items:
          type:
          - array
          - 'null'
          items:
            type: object
            title: Included orders invoices line item
            description: The orders invoice line item to fulfill as part of this fulfillment
            properties:
              id:
                type: integer
                description: Included orders line item ID
              public_id:
                type:
                - string
                - 'null'
                description: The public ID of the included order invoices line item
              fulfillment_id:
                type: integer
                description: Fulfillment ID
              quantity:
                type: integer
                description: The quantity of the invoices line item subject that is part of this fulfillment. Your stock must have enough quantity for a successful fulfillment.
              invoices_line_item_id:
                type: integer
                description: The invoice line item of an order that is part of this fulfillment.
          description: Line items that are included in your fulfillment. They reference invoice line items of one or more orders and have extra data about the line item that is being fulfilled like the quantity that is part of this fulfillment.
      example:
        id: 1
        public_id: dcbmDy
        workspace_id: 42000
        contact_id: 8
        status: fulfilled
        tracking_url: https://usps.com/track/1234567890
        shipping_provider: USPS
        tracking_code: '1234567890'
        location_id: 1
        fulfillment_number: 1
        created_at: '2025-01-01T00:00:00.000Z'
        updated_at: '2025-01-01T00:00:00.000Z'
        included_invoices_line_items:
        - id: 1
          public_id: PYvAJe
          fulfillment_id: 1
          quantity: 1
          invoices_line_item_id: 125
      required:
      - contact_id
      - created_at
      - fulfillment_number
      - id
      - included_invoices_line_items
      - location_id
      - public_id
      - shipping_provider
      - status
      - tracking_code
      - tracking_url
      - updated_at
      - workspace_id
    FulfillmentParametersUpdate:
      type: object
      title: Fulfillments
      description: Fulfillments
      required: []
      properties:
        tracking_url:
          type:
          - string
          - 'null'
          description: Tracking URL
        shipping_provider:
          type:
          - string
          - 'null'
          description: Shipping Provider
        tracking_code:
          type:
          - string
          - 'null'
          description: Tracking Code
        notify_customer:
          type: boolean
          description: Send an email to the customer when the fulfillment is updated. Will use workspace default behavior if left unset
      example:
        fulfillment:
          tracking_url: https://usps.com/track/1234567890
          shipping_provider: USPS
          tracking_code: '1234567890'
          notify_customer: true
  parameters:
    id:
      name: id
      in: path
      required: true
      schema:
        type: string
    sort_property:
      name: sort_property
      in: query
      description: 'Sort property of a list response. The default is id and thus the created_at order.

        If you sort by other properties, we additionally sort by id implicitly as a secondary sort property, so that you can rely on the sort order to be deterministic even if the main sort property ends up with the same values.

        '
      required: false
      schema:
        type: string
        enum:
        - id
        - updated_at
    sort_order:
      name: sort_order
      in: query
      description: Sort order of a list response. Use 'desc' to reverse the default 'asc' (ascending) sort order. Examples [in our guides](https://developers.myclickfunnels.com/docs/pagination).
      required: false
      schema:
        type: string
        enum:
        - asc
        - desc
    after:
      name: after
      in: query
      required: false
      schema:
        type: string
      description: ID of item after which the collection should be returned. More examples and info about pagination [in our guides](https://developers.myclickfunnels.com/docs/pagination).
  headers:
    Link:
      description: A direct link to the next page for the cursor-based pagination. It includes the `after` and the Pagination-Next ID value.
      schema:
        type: string
    PaginationNext:
      description: ID of the last item in the current response after which more records exist. You can use it in an `after` query parameter for cursor-based pagination to get to the next page.
      schema:
        type: string
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
externalDocs:
  description: More in-depth guides and further resources
  url: https://developers.myclickfunnels.com