Update Funnel
Changed onUpdate 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.
Request
- Base URLhttps://myworkspace.myclickfunnels.com/api/v2
- Auth
- HTTP bearer
- or OAuth 2Authorization codehttps://accounts.myclickfunnels.com/oauth/authorizeToken URLhttps://accounts.myclickfunnels.com/oauth/token
- TypeScriptA function with typed inputs. Its response is checked against the schema.
Path parameters
Query parameters
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
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 fromstringnulltointegernullfor 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
- breaking