API by router
Recipes
GET
HTTPBearerheader
AuthorizationBearer <token>X-Api-Key?string|nullSuccessful Response
application/json- response
[index: integer]?curl -X GET 'https://example.com/v1/recipes'Example Response
[ { "approval_rules": {}, "channel_config": {}, "channel_types": [], "compliance_config": {}, "connection_requirements": [], "created_at": "2019-08-24T14:15:22Z", "data_access": {}, "description": "string", "hosting_mode": "dedicated", "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "is_active": true, "is_platform_template": false, "manifest_id": "string", "mcp_servers": [], "model_policy": {}, "module_config": {}, "name": "string", "onboarding_flow_id": "5678512d-5385-4d91-b175-d714095019d8", "rules_template_id": "2f58bba2-6f2c-4b37-bef9-a3182f3427ec", "shared_node_capacity": 50, "sidecars": [ null ], "skills": [ null ], "source_instance_id": "5f29be29-2815-47a9-b288-7f260493a004", "system_prompt": "string", "tenant_id": "34f5c98e-f430-457b-a812-92637d0c6fd0", "trigger_templates": [], "updated_at": "2019-08-24T14:15:22Z", "voice_config": {}, "workflow_slugs": [ null ] }]POST
HTTPBearerheader
AuthorizationBearer <token>X-Api-Key?string|nullapplication/json- body
approval_rules?|nullchannel_config?|nullchannel_types?array<string>|Default
[]compliance_config?|nullconnection_requirements?array<string>|Default
[]data_access?|nulldescription?string|nullhosting_mode?Hosting ModeMatch
^(dedicated|shared)$Default
"dedicated"manifest_id?|Custom manifest ID (e.g., leslie-agent)
mcp_servers?array<string>|Default
[]model_policy?|nullmodule_config?|nullname*NameLength
length <= 200onboarding_flow_id?|nullrules_template_id?|nullshared_node_capacity?|Default
50sidecars?array<>|Sidecar declarations [{name, port, path, health, runtime}]
skills?array<string>Default
[]system_prompt?string|nulltrigger_templates?array<>|nullvoice_config?|nullworkflow_slugs?array<string>Default
[]Successful Response
application/json- response
approval_rules*|nullchannel_config*|nullchannel_types?array<unknown>Default
[]compliance_config?|nullconnection_requirements?array<unknown>Default
[]created_at*Created AtFormat
date-timedata_access?|nulldescription*string|nullhosting_mode?Hosting ModeDefault
"dedicated"id*IdFormat
uuidis_active*Is Activeis_platform_template?Is Platform TemplateDefault
falsemanifest_id?string|nullmcp_servers?array<unknown>Default
[]model_policy?|nullmodule_config*|nullname*Nameonboarding_flow_id?|nullrules_template_id?|nullshared_node_capacity?Shared Node CapacityDefault
50sidecars?array<unknown>|nullskills*array<unknown>source_instance_id?|nullsystem_prompt*string|nulltenant_id*Tenant IdFormat
uuidtrigger_templates?array<unknown>|Default
[]updated_at*Updated AtFormat
date-timevoice_config?|nullworkflow_slugs*array<unknown>curl -X POST 'https://example.com/v1/recipes' \ -H 'Content-Type: application/json' \ -d '{ "name": "string"}'Example Response
{ "approval_rules": {}, "channel_config": {}, "channel_types": [], "compliance_config": {}, "connection_requirements": [], "created_at": "2019-08-24T14:15:22Z", "data_access": {}, "description": "string", "hosting_mode": "dedicated", "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "is_active": true, "is_platform_template": false, "manifest_id": "string", "mcp_servers": [], "model_policy": {}, "module_config": {}, "name": "string", "onboarding_flow_id": "5678512d-5385-4d91-b175-d714095019d8", "rules_template_id": "2f58bba2-6f2c-4b37-bef9-a3182f3427ec", "shared_node_capacity": 50, "sidecars": [ null ], "skills": [ null ], "source_instance_id": "5f29be29-2815-47a9-b288-7f260493a004", "system_prompt": "string", "tenant_id": "34f5c98e-f430-457b-a812-92637d0c6fd0", "trigger_templates": [], "updated_at": "2019-08-24T14:15:22Z", "voice_config": {}, "workflow_slugs": [ null ]}POST
HTTPBearerheader
AuthorizationBearer <token>X-Api-Key?string|nullapplication/json- body
description*DescriptionLength
10 <= length <= 2000Successful Response
application/json- response
channel_types?array<string>Default
[]connection_requirements?array<string>Default
[]description?string|nullmodel_policy?|nullname*Nameskills?array<string>Default
[]system_prompt?string|nullcurl -X POST 'https://example.com/v1/recipes/ai-assist' \ -H 'Content-Type: application/json' \ -d '{ "description": "stringstri"}'Example Response
{ "channel_types": [], "connection_requirements": [], "description": "string", "model_policy": {}, "name": "string", "skills": [], "system_prompt": "string"}POST
HTTPBearerheader
AuthorizationBearer <token>X-Api-Key?string|nullapplication/json- body
instance_overrides?|nullrecipe_id*Recipe IdFormat
uuidSuccessful Response
application/json- response
resolved_config*template_name*Template Nameviolations?array<string>Default
[]curl -X POST 'https://example.com/v1/recipes/compose' \ -H 'Content-Type: application/json' \ -d '{ "recipe_id": "fa7d15d4-7670-4586-a94b-5079ed028135"}'Example Response
{ "resolved_config": {}, "template_name": "string", "violations": []}POST
HTTPBearerheader
AuthorizationBearer <token>X-Api-Key?string|nullapplication/json- body
customer_id*Customer IdFormat
uuidhosting_mode?Hosting ModeMatch
^(dedicated|shared)$Default
"dedicated"hostname*HostnameLength
length <= 100idempotency_key?string|nullinstance_overrides?|nullmanifest_id?|nullrecipe_id*Recipe IdFormat
uuidregion_id*Region IdLength
length <= 50shared_node_capacity?Shared Node CapacityRange
10 <= value <= 200Default
50tier_id*Tier IdFormat
uuidSuccessful Response
application/json- response
idempotency_key?string|nullinstance_id?|nullmissing_connections?array<string>Default
[]ready*Readytask_id?string|nulltemplate_name*Template Nameviolations?array<string>Default
[]curl -X POST 'https://example.com/v1/recipes/deploy' \ -H 'Content-Type: application/json' \ -d '{ "customer_id": "160c0c4b-9966-4dc1-a916-8407eb10d74e", "hostname": "string", "recipe_id": "fa7d15d4-7670-4586-a94b-5079ed028135", "region_id": "string", "tier_id": "b1cd8bf0-c8eb-4fce-9cae-ebe5317fe7f6"}'Example Response
{ "idempotency_key": "string", "instance_id": "06587974-2dbe-4e10-8bf9-38cce0f5a366", "missing_connections": [], "ready": true, "task_id": "string", "template_name": "string", "violations": []}POST
HTTPBearerheader
AuthorizationBearer <token>X-Api-Key?string|nullapplication/json- body
customer_id*Customer IdFormat
uuidhostname*HostnameLength
length <= 100instance_overrides?|nullrecipe_id*Recipe IdFormat
uuidSuccessful Response
application/json- response
missing_connections?array<string>Default
[]ready*Readyresolved_config*template_name*Template Nameviolations?array<string>Default
[]curl -X POST 'https://example.com/v1/recipes/deploy-check' \ -H 'Content-Type: application/json' \ -d '{ "customer_id": "160c0c4b-9966-4dc1-a916-8407eb10d74e", "hostname": "string", "recipe_id": "fa7d15d4-7670-4586-a94b-5079ed028135"}'Example Response
{ "missing_connections": [], "ready": true, "resolved_config": {}, "template_name": "string", "violations": []}POST
HTTPBearerheader
AuthorizationBearer <token>instance_id*Instance IdFormat
uuidX-Api-Key?string|nullapplication/json- body
description?string|nullname*NameLength
length <= 200Successful Response
application/json- response
approval_rules*|nullchannel_config*|nullchannel_types?array<unknown>Default
[]compliance_config?|nullconnection_requirements?array<unknown>Default
[]created_at*Created AtFormat
date-timedata_access?|nulldescription*string|nullhosting_mode?Hosting ModeDefault
"dedicated"id*IdFormat
uuidis_active*Is Activeis_platform_template?Is Platform TemplateDefault
falsemanifest_id?string|nullmcp_servers?array<unknown>Default
[]model_policy?|nullmodule_config*|nullname*Nameonboarding_flow_id?|nullrules_template_id?|nullshared_node_capacity?Shared Node CapacityDefault
50sidecars?array<unknown>|nullskills*array<unknown>source_instance_id?|nullsystem_prompt*string|nulltenant_id*Tenant IdFormat
uuidtrigger_templates?array<unknown>|Default
[]updated_at*Updated AtFormat
date-timevoice_config?|nullworkflow_slugs*array<unknown>curl -X POST 'https://example.com/v1/recipes/save-from-instance/497f6eca-6276-4993-bfeb-53cbbbba6f08' \ -H 'Content-Type: application/json' \ -d '{ "name": "string"}'Example Response
{ "approval_rules": {}, "channel_config": {}, "channel_types": [], "compliance_config": {}, "connection_requirements": [], "created_at": "2019-08-24T14:15:22Z", "data_access": {}, "description": "string", "hosting_mode": "dedicated", "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "is_active": true, "is_platform_template": false, "manifest_id": "string", "mcp_servers": [], "model_policy": {}, "module_config": {}, "name": "string", "onboarding_flow_id": "5678512d-5385-4d91-b175-d714095019d8", "rules_template_id": "2f58bba2-6f2c-4b37-bef9-a3182f3427ec", "shared_node_capacity": 50, "sidecars": [ null ], "skills": [ null ], "source_instance_id": "5f29be29-2815-47a9-b288-7f260493a004", "system_prompt": "string", "tenant_id": "34f5c98e-f430-457b-a812-92637d0c6fd0", "trigger_templates": [], "updated_at": "2019-08-24T14:15:22Z", "voice_config": {}, "workflow_slugs": [ null ]}GET
HTTPBearerheader
AuthorizationBearer <token>template_id*Template IdFormat
uuidX-Api-Key?string|nullSuccessful Response
application/json- response
approval_rules*|nullchannel_config*|nullchannel_types?array<unknown>Default
[]compliance_config?|nullconnection_requirements?array<unknown>Default
[]created_at*Created AtFormat
date-timedata_access?|nulldescription*string|nullhosting_mode?Hosting ModeDefault
"dedicated"id*IdFormat
uuidis_active*Is Activeis_platform_template?Is Platform TemplateDefault
falsemanifest_id?string|nullmcp_servers?array<unknown>Default
[]model_policy?|nullmodule_config*|nullname*Nameonboarding_flow_id?|nullrules_template_id?|nullshared_node_capacity?Shared Node CapacityDefault
50sidecars?array<unknown>|nullskills*array<unknown>source_instance_id?|nullsystem_prompt*string|nulltenant_id*Tenant IdFormat
uuidtrigger_templates?array<unknown>|Default
[]updated_at*Updated AtFormat
date-timevoice_config?|nullworkflow_slugs*array<unknown>curl -X GET 'https://example.com/v1/recipes/497f6eca-6276-4993-bfeb-53cbbbba6f08'Example Response
{ "approval_rules": {}, "channel_config": {}, "channel_types": [], "compliance_config": {}, "connection_requirements": [], "created_at": "2019-08-24T14:15:22Z", "data_access": {}, "description": "string", "hosting_mode": "dedicated", "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "is_active": true, "is_platform_template": false, "manifest_id": "string", "mcp_servers": [], "model_policy": {}, "module_config": {}, "name": "string", "onboarding_flow_id": "5678512d-5385-4d91-b175-d714095019d8", "rules_template_id": "2f58bba2-6f2c-4b37-bef9-a3182f3427ec", "shared_node_capacity": 50, "sidecars": [ null ], "skills": [ null ], "source_instance_id": "5f29be29-2815-47a9-b288-7f260493a004", "system_prompt": "string", "tenant_id": "34f5c98e-f430-457b-a812-92637d0c6fd0", "trigger_templates": [], "updated_at": "2019-08-24T14:15:22Z", "voice_config": {}, "workflow_slugs": [ null ]}DELETE
HTTPBearerheader
AuthorizationBearer <token>template_id*Template IdFormat
uuidX-Api-Key?string|nullSuccessful Response
curl -X DELETE 'https://example.com/v1/recipes/497f6eca-6276-4993-bfeb-53cbbbba6f08'Example Response
Empty
PUT
HTTPBearerheader
AuthorizationBearer <token>template_id*Template IdFormat
uuidX-Api-Key?string|nullapplication/json- body
approval_rules?|nullchannel_config?|nullchannel_types?array<string>|nullcompliance_config?|nullconnection_requirements?array<string>|nulldata_access?|nulldescription?string|nullhosting_mode?string|nullis_active?boolean|nullmanifest_id?string|nullmcp_servers?array<string>|nullmodel_policy?|nullmodule_config?|nullname?string|nullonboarding_flow_id?|nullrules_template_id?|nullshared_node_capacity?integer|nullsidecars?array<>|nullskills?array<string>|nullsystem_prompt?string|nulltrigger_templates?array<>|nullvoice_config?|nullworkflow_slugs?array<string>|nullSuccessful Response
application/json- response
approval_rules*|nullchannel_config*|nullchannel_types?array<unknown>Default
[]compliance_config?|nullconnection_requirements?array<unknown>Default
[]created_at*Created AtFormat
date-timedata_access?|nulldescription*string|nullhosting_mode?Hosting ModeDefault
"dedicated"id*IdFormat
uuidis_active*Is Activeis_platform_template?Is Platform TemplateDefault
falsemanifest_id?string|nullmcp_servers?array<unknown>Default
[]model_policy?|nullmodule_config*|nullname*Nameonboarding_flow_id?|nullrules_template_id?|nullshared_node_capacity?Shared Node CapacityDefault
50sidecars?array<unknown>|nullskills*array<unknown>source_instance_id?|nullsystem_prompt*string|nulltenant_id*Tenant IdFormat
uuidtrigger_templates?array<unknown>|Default
[]updated_at*Updated AtFormat
date-timevoice_config?|nullworkflow_slugs*array<unknown>curl -X PUT 'https://example.com/v1/recipes/497f6eca-6276-4993-bfeb-53cbbbba6f08' \ -H 'Content-Type: application/json' \ -d '{}'Example Response
{ "approval_rules": {}, "channel_config": {}, "channel_types": [], "compliance_config": {}, "connection_requirements": [], "created_at": "2019-08-24T14:15:22Z", "data_access": {}, "description": "string", "hosting_mode": "dedicated", "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "is_active": true, "is_platform_template": false, "manifest_id": "string", "mcp_servers": [], "model_policy": {}, "module_config": {}, "name": "string", "onboarding_flow_id": "5678512d-5385-4d91-b175-d714095019d8", "rules_template_id": "2f58bba2-6f2c-4b37-bef9-a3182f3427ec", "shared_node_capacity": 50, "sidecars": [ null ], "skills": [ null ], "source_instance_id": "5f29be29-2815-47a9-b288-7f260493a004", "system_prompt": "string", "tenant_id": "34f5c98e-f430-457b-a812-92637d0c6fd0", "trigger_templates": [], "updated_at": "2019-08-24T14:15:22Z", "voice_config": {}, "workflow_slugs": [ null ]}