Funnel

Update a funnel's settings, including its path, favicon, domain, and tags, by numeric id or public id with the funnel JSON root. PATCH is also supported. The favicon is writable only on this operation; creation already accepts a path. The target image, domain, and tags must belong to the funnel's workspace. A path edit cannot take an occupied or historical URL or move the root path. Domain changes can continue propagating after this response.

live_mode controls test versus live payment processing; changing it does not publish page content. Use PUT /api/v2/pages/:id or PATCH /api/v2/pages/:id for an intentional live page content replacement and GET /api/v2/pages/:id to read the resource back. There is currently no atomic whole-funnel release or pollable publish receipt.

Boolean true/false and their string forms assign live_mode; null, empty and other values leave it unchanged. Set it to true only when live payment processing is intended.

Use head_code and footer_code to inject custom code. Their modes default to append; use replace for repeatable writes. Null clears code.

put/funnels/{id}

Request

Path parameters

idstring required

Query parameters

expand[]string[]

Expand additional data in the response. Use expand[]=field_name to include optional fields. Available fields: head_code, footer_code. See the Expanding guide for examples.

Request body

Example request

{
  "funnel": {
    "funnel": {
      "name": "Example Funnel",
      "current_path": "/example-funnel",
      "live_mode": false,
      "favicon_image_id": 73,
      "tag_ids": [
        9
      ],
      "head_code": "<script>console.log('funnel');</script>",
      "head_code_mode": "append"
    }
  }
}

Response

OK

idinteger

Funnel ID

public_idstring

The public identifier of the funnel

workspace_idinteger

The ID of the workspace that the funnel belongs to

namestring

Name of the Funnel

archivedboolean

Archived status

current_pathstring

The URL path of the funnel

live_modeboolean

Test versus live payment processing mode, not page visibility or publication status. False means test mode; true enables live payments.

domain_idinteger nullable

The ID of the domain associated with this funnel. Use the Domains API to look up available domain IDs.

favicon_image_idinteger nullable

The ID of the image used as the favicon for this funnel

created_atstring date-time

Created at

updated_atstring date-time

Updated at

head_codestring nullable

Expandable Custom HTML/JavaScript code injected into the funnel head section. Only returned when expand[]=head_code is provided. Note: expanding may add latency, especially on list endpoints. Use sparingly.

footer_codestring nullable

Expandable Custom HTML/JavaScript code injected before the closing body tag. Only returned when expand[]=footer_code is provided. Note: expanding may add latency, especially on list endpoints. Use sparingly.

Example response

{
  "id": 1,
  "public_id": "gESyMv",
  "workspace_id": 42000,
  "name": "Example Funnel",
  "archived": false,
  "current_path": "/example-path",
  "live_mode": false,
  "domain_id": 42,
  "favicon_image_id": null,
  "created_at": "2025-01-01T00:00:00.000Z",
  "updated_at": "2025-01-01T00:00:00.000Z",
  "tags": [
    {
      "id": 1,
      "public_id": "JgjGTv",
      "name": "Example Funnel Tag",
      "color": "#00FF00"
    }
  ]
}

Changes

    • breaking

      the request property became required

    • breaking

      the response's property type changed from string null to integer null for status

    • info

      added the new optional request property /

    • info

      added the new optional request property /

    • info

      added the new optional request property /

    • info

      added the non-success response with the status

    • info

      added the non-success response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status