atteq API
  • Guides
  • Recipes
  • Cookbook
  • API Reference
Information
agents
    List AgentsgetCreate AgentpostDocument AttachmentsgetGet VersiongetEdit DraftpatchReplace Draft GraphputPublish VersionpostGet AgentgetDelete AgentdeleteCopy AgentpostGet DraftgetGet Agent MapgetPending ChangesgetList PlacementsgetRestore VersionpostList VersionsgetGet Mapget
voice_agent
    Open Browser CallpostEnd Browser CalldeleteGet Agent Test LinkgetGet Bridge CeilinggetSet Bridge Ceilingpatch
ai_profiles
    Get Ai Profile CapabilitiesgetList Live SettingsgetCreate Live SettingspostDelete Live SettingsdeleteUpdate Live SettingspatchList Llm SettingsgetCreate Llm SettingspostDelete Llm SettingsdeleteUpdate Llm SettingspatchList ProfilesgetCreate ProfilepostGet ProfilegetDelete ProfiledeleteUpdate ProfilepatchCopy ProfilepostSet Text SectionputSet Voice SectionputList Stt SettingsgetCreate Stt SettingspostDelete Stt SettingsdeleteUpdate Stt SettingspatchList Tts SettingsgetCreate Tts SettingspostDelete Tts SettingsdeleteUpdate Tts SettingspatchList Vad SettingsgetCreate Vad SettingspostDelete Vad SettingsdeleteUpdate Vad Settingspatch
analyst
    List Agent FindingsgetCall Back FindingpostDismiss FindingpostUndo Finding DismissaldeleteTeach FindingpostWatch FindingpostList Question ChartsgetList Tracked QuestionsgetCreate Tracked QuestionpostGet Question Search CostgetSearch For Tracked QuestionpostPropose Tracked QuestionpostDelete Tracked QuestiondeleteUpdate Tracked QuestionpatchGet Reading SwitchgetSet Reading SwitchputGet Agent Summaryget
analytics
    List ChartsgetCreate ChartpostPreview ChartpostGet ChartgetDelete ChartdeleteUpdate ChartpatchRun ChartpostList DatasetsgetList BoardsgetCreate BoardpostGet TraversalgetGet BoardgetDelete BoarddeleteUpdate Boardpatch
authentication
    List InvitationsgetInvite MemberpostRevoke InvitationdeleteResend InvitationpostList MembersgetRemove MemberdeleteGet Member Conversation AccessgetSet Member Conversation AccesspatchSet Member FlagspatchSet Member RolepatchGet OrganizationgetUpdate OrganizationpatchGet Role FlagsgetSet Role Flagspatch
automations
    List AutomationsgetCreate AutomationpostGet AutomationgetDelete AutomationdeleteUpdate AutomationpatchSet Automation EnabledputGet Automation MapgetRun AutomationpostList Automation RunsgetGet Automation Runget
billable-metrics
    List MetricsgetUsage SummarygetGet Metricget
outbound_calls
    Place CallpostList CampaignsgetCreate CampaignpostGet CampaigngetDelete CampaigndeleteUpdate CampaignpatchActivate CampaignpostLink CollectionpostAdd ContactspostAdd Contacts From CollectionpostRemove Contacts From CollectionpostSet Campaign HoursputPreview Campaign HourspostPause CampaignpostGet Campaign SummarygetExclude ContactpostInclude Contactpost
channels
    List ChannelsgetCreate ChannelpostList Thread SubjectsgetClose Channel ThreadpostList Thread DecisionsgetGet Thread Contact FilegetHand Thread To AgentpostList Thread MailgetGet Prepared ReplygetAsk Again For Prepared ReplypostDiscard Prepared ReplypostSend Prepared ReplypostReply On Channel ThreadpostGet ChannelgetDelete ChanneldeleteUpdate ChannelpatchSend On ChannelpostList Channel ThreadsgetList RostergetCreate Roster EntrypostGet Own Roster EntrygetGet Roster EntrygetDelete Roster EntrydeleteUpdate Roster EntrypatchAdd Roster AddresspostChange Roster AddressputRemove Roster Addressdelete
custom-data
    List CollectionsgetCreate CollectionpostList Collection NamesgetGet CollectiongetDelete CollectiondeleteUpdate CollectionpatchAdd FieldpostDelete FielddeleteUpdate FieldpatchImport RecordspostPlan ImportpostPropose ImportpostGet ImportgetList RecordsgetCreate RecordpostBulk Delete RecordspostBulk Set FieldpostCount RecordsgetList Records Of ContactgetDelete Records Of ContactdeleteGet RecordgetDelete RecorddeleteUpdate Recordpatch
connections
    List ConnectionsgetCreate ConnectionpostCreate Forwarded AddresspostCreate Mail ServerpostDiscover Mail ServerpostAuthorize Microsoft MailboxpostList ProvidersgetGet ConnectiongetDelete ConnectiondeleteUpdate ConnectionpatchGet Forwarded AddressgetCheck Forwarded AddresspostList Person GrantsgetSet Person GrantputRemove Person GrantdeleteGet Mail ServergetUpdate Mail ServerpatchList Mail Server FoldersgetEnter Mail Server PasswordputChange Mail Server ServersputTest Mail Server AgainpostGet Microsoft MailboxgetUpdate Microsoft MailboxpatchList Microsoft Mailbox FoldersgetConsent To Microsoft Mailbox WritespostWithdraw Microsoft Mailbox Writesdelete
custom-tools
    List Custom ToolsgetCreate Custom ToolpostGet Custom ToolgetDelete Custom TooldeleteGet Custom Tool DraftgetEdit Custom Tool DraftpatchPublish Custom ToolpostRestore Custom Tool VersionpostTry Custom ToolpostList Custom Tool Versionsget
rag
    List DocumentsgetUpload DocumentpostSearch DocumentspostGet DocumentgetDelete DocumentdeleteDownload DocumentgetReingest Documentpost
flows
    List FlowsgetCreate FlowpostGet FlowgetDelete FlowdeleteRename FlowpatchAdd Flow EdgepostDelete Flow EdgedeleteSet Entry SteppatchAdd SteppostDelete StepdeleteUpdate SteppatchTest FlowpostList Flow Testsget
dynamic_context
    Create GraphpostGet GraphgetDelete GraphdeleteAdd EdgepostDelete EdgedeleteAdd NodepostDelete NodedeleteUpdate NodepatchSet Rootput
inbox
    Get Inbox Open CountgetSet Inbox PreferencespatchGet Inbox RailgetCreate Inbox ViewpostDelete Inbox ViewdeleteUpdate Inbox Viewpatch
handoff
    Assign Threadpost
interactions
    List InteractionsgetCount InteractionsgetGet InteractiongetSet Conversation LabelspostGet TracegetGet TranscriptgetList LabelsgetCreate LabelpostDelete LabeldeleteUpdate Labelpatch
legal
    Agree To Processing AgreementpostAgree To TermspostLegal BoxesgetList Legal DocumentsgetRead Legal DocumentgetList Legal VersionsgetRead Legal VersiongetDownload Legal VersiongetOrganization Legal HistorygetOwn Legal HistorygetObject To SubprocessorspostWithdraw ObjectionpostLegal Pendingget
not-a-tool
    Agree To Processing AgreementpostAgree To TermspostObject To SubprocessorspostWithdraw Objectionpost
memory
    List MemoriesgetList Memory LinesgetCreate Memory LinepostDelete Memory LinedeleteUpdate Memory LinepatchList Memory PeoplegetGet Memory PersongetForget PersondeleteGet Memory SwitchgetSet Memory SwitchputWipe ContactdeleteGet Conversation MemorygetRecall MemoriespostGet MemorygetDelete MemorydeletePatch Memorypatch
notifications
    List InboxgetGet Unread CountgetMark ReadpostMark Unreaddelete
recipes
    List RecipesgetList Installed RecipesgetGet Installed RecipegetUninstall RecipedeleteSet Recipe EnabledputUpdate Recipe ParameterspatchUpdate RecipepostInstall Recipepost
data-retention
    Get RetentiongetSet Retentionpatch
text
    Open ConversationpostClose ConversationpostAnswer ConfirmationpostGet Sent FilegetSend MessagepostSet Modepatch
tools
    List ToolsgetCreate ToolpostList BuiltinsgetImport Mcp ServerpostImport OpenapipostPreview Openapi ImportpostSuggest Tool ExamplespostGet ToolgetDelete TooldeleteUpdate ToolpatchTest ToolpostList Tool Testsget
trunks
    List Transfer DirectorygetCreate Transfer Directory EntrypostGet Transfer Directory EntrygetDelete Transfer Directory EntrydeleteUpdate Transfer Directory EntrypatchList TrunksgetCreate TrunkpostGet TrunkgetDelete TrunkdeleteUpdate TrunkpatchList Forward Recordsget
Schemas
powered by Zudoku
attek API
attek API

recipes


List Recipes

GET
/api/v1/recipes

List the recipes this organization can install: features made of the platform's own collections, tools, flows and automations. Each says what it does, what it will create, what it asks for and which features it needs. One that cannot be installed here says why in unavailable_reason. Install one with install_recipe. Its words are in the language Accept-Language prefers, Spanish or English.

List Recipes › Responses

Successful Response

​RecipeOut[]
A catalogue entry: what the recipe does, what it creates, what it asks for and which features it needs (rules 4-5).
RecipeOut
adapt
​string · required
​ResourceSummary[] · required
description
​string · required
intent
​string · required
key
​string · required
name
​string · required
needs
​FeatureFlag[] · required
Enum values:
voice_agents
text_agents
ai_profiles
outbound_calls
rag
memory
tools
custom_tools
​Parameter[] · required
setup
​string · required
version
​integer · required
headline
​string
Default:
mark
​RecipeMark · enum

The glyph a recipe is drawn with beside its name -- a closed set, so a new recipe picks one in its YAML and no screen needs a change to draw it (#1849). Each names what it depicts, never an icon library's name.

Enum values:
brain
calendar
agent
database
mail
package
Default: package
​
​object
​
GET/api/v1/recipes
curl /api/v1/recipes \ --header 'Authorization: Bearer <token>'
Example Responses
[ { "adapt": "adapt", "creates": [ { "key": "key", "kind": "kind", "name": "name", "says": "says" } ], "description": "description", "headline": "", "intent": "intent", "key": "key", "mark": "package", "name": "name", "needs": [ "voice_agents" ], "parameters": [ { "default": {}, "description": "", "kind": "text", "label": "label", "maximum": 0, "minimum": 0, "name": "name", "required": false } ], "proposed_labels": { "labels": [ { "description": "", "joins": false, "key": "key", "name": "name" } ], "parameter": "parameter" }, "setup": "setup", "setup_blank": { "key": "string" }, "unavailable_reason": "string", "version": 0 } ]
json
application/json

List Installed Recipes

GET
/api/v1/recipes/installed

List the recipes installed in this organization, each with its version, parameters, on/off, state, the agent or the connection it is installed for if any, and the parts it made. Give agent_id to list only what is installed for one agent, or channel_id for what answers one connection.

List Installed Recipes › query Parameters

agent_id
​

Only the recipes installed for this agent.

Only the recipes installed for this agent.

channel_id
​

Only the recipes installed on this connection, by its channel's id.

Only the recipes installed on this connection, by its channel's id.

List Installed Recipes › Responses

Successful Response

​InstalledRecipeOut[]
An installed recipe as one thing with its parts beneath (rule 10).
InstalledRecipeOut
​required
enabled
​boolean · required
​required
handed_over
​string[] · required
id
​string · uuid · required
installed_at
​string · date-time · required
key
​string · required
missing
​string[] · required
​required
name
​string · required
​object · required
​PartOut[] · required
setup
​string · required
state
​InstallState · enum · required

Where an installed recipe stands (rules 8, 16, 18).

Enum values:
installed
incomplete
needs_value
​required
version
​integer · required
​
​
​object
​
unseen
​integer
Default: 0
​
worst_state
​string · enum
Enum values:
failing
unknown
paused
working
Default: working
GET/api/v1/recipes/installed
curl /api/v1/recipes/installed \ --header 'Authorization: Bearer <token>'
Example Responses
[ { "agent_id": "00000000-0000-0000-0000-000000000000", "channel_id": "00000000-0000-0000-0000-000000000000", "current_version": 0, "enabled": true, "error": "string", "handed_over": [ "string" ], "id": "00000000-0000-0000-0000-000000000000", "installed_at": "2024-08-25T15:00:00Z", "key": "key", "missing": [ "string" ], "moved_at": "2024-08-25T15:00:00Z", "name": "name", "parameters": {}, "parts": [ { "contact_field": "string", "editable": false, "id": "00000000-0000-0000-0000-000000000000", "key": "key", "kind": "kind", "last_run_at": "2024-08-25T15:00:00Z", "name": "string", "position": 0, "says": "string", "stage": "sets_off", "state": "failing", "state_reason": "string", "where": "where" } ], "setup": "setup", "setup_blank": { "key": "string" }, "state": "installed", "switched_off_reason": "string", "uninstall_leaves": "string", "unseen": 0, "version": 0, "worst_reason": "string", "worst_state": "working" } ]
json
application/json

Get Installed Recipe

GET
/api/v1/recipes/installed/{key}

Read one installed recipe: its parameters, whether it is on, its state and every part it made with where that part lives. Reading it also brings it to the recipe's current version when it is behind. A recipe installed per agent is read with agent_id, one installed per connection with channel_id.

Get Installed Recipe › path Parameters

key
​string · required

Get Installed Recipe › query Parameters

agent_id
​

The agent the install is for: required for a recipe that asks for an agent, refused for one installed once per organization.

The agent the install is for: required for a recipe that asks for an agent, refused for one installed once per organization.

channel_id
​

The connection the install answers, by its channel's id: required for a recipe that asks for a connection, refused for any other.

The connection the install answers, by its channel's id: required for a recipe that asks for a connection, refused for any other.

Get Installed Recipe › Responses

Successful Response

An installed recipe as one thing with its parts beneath (rule 10).
InstalledRecipeOut
​required
enabled
​boolean · required
​required
handed_over
​string[] · required
id
​string · uuid · required
installed_at
​string · date-time · required
key
​string · required
missing
​string[] · required
​required
name
​string · required
​object · required
​PartOut[] · required
setup
​string · required
state
​InstallState · enum · required

Where an installed recipe stands (rules 8, 16, 18).

Enum values:
installed
incomplete
needs_value
​required
version
​integer · required
​
​
​object
​
unseen
​integer
Default: 0
​
worst_state
​string · enum
Enum values:
failing
unknown
paused
working
Default: working
GET/api/v1/recipes/installed/{key}
curl /api/v1/recipes/installed/:key \ --header 'Authorization: Bearer <token>'
Example Responses
{ "agent_id": "00000000-0000-0000-0000-000000000000", "channel_id": "00000000-0000-0000-0000-000000000000", "current_version": 0, "enabled": true, "error": "string", "handed_over": [ "string" ], "id": "00000000-0000-0000-0000-000000000000", "installed_at": "2024-08-25T15:00:00Z", "key": "key", "missing": [ "string" ], "moved_at": "2024-08-25T15:00:00Z", "name": "name", "parameters": {}, "parts": [ { "contact_field": "string", "editable": false, "id": "00000000-0000-0000-0000-000000000000", "key": "key", "kind": "kind", "last_run_at": "2024-08-25T15:00:00Z", "name": "string", "position": 0, "says": "string", "stage": "sets_off", "state": "failing", "state_reason": "string", "where": "where" } ], "setup": "setup", "setup_blank": { "key": "string" }, "state": "installed", "switched_off_reason": "string", "uninstall_leaves": "string", "unseen": 0, "version": 0, "worst_reason": "string", "worst_state": "working" }
json
application/json

Uninstall Recipe

DELETE
/api/v1/recipes/installed/{key}

Uninstall a recipe: every part it made is deleted -- its placements, tools, flows, automations and collections, the collections' records included -- and the answer names what went. A connection it answered is first left answered by the agent it named, or by a person, as the installed recipe's uninstall_leaves says. It cannot be undone; ask the person first.

Uninstall Recipe › path Parameters

key
​string · required

Uninstall Recipe › query Parameters

agent_id
​

The agent the install is for: required for a recipe that asks for an agent, refused for one installed once per organization.

The agent the install is for: required for a recipe that asks for an agent, refused for one installed once per organization.

channel_id
​

The connection the install answers, by its channel's id: required for a recipe that asks for a connection, refused for any other.

The connection the install answers, by its channel's id: required for a recipe that asks for a connection, refused for any other.

Uninstall Recipe › Responses

Successful Response

What uninstalling deleted, records included (rule 19). Nothing is handed over.
UninstalledOut
​PartOut[] · required
key
​string · required
records_deleted
​integer · required
DELETE/api/v1/recipes/installed/{key}
curl /api/v1/recipes/installed/:key \ --request DELETE \ --header 'Authorization: Bearer <token>'
Example Responses
{ "deleted": [ { "contact_field": "string", "editable": false, "id": "00000000-0000-0000-0000-000000000000", "key": "key", "kind": "kind", "last_run_at": "2024-08-25T15:00:00Z", "name": "string", "position": 0, "says": "string", "stage": "sets_off", "state": "failing", "state_reason": "string", "where": "where" } ], "key": "key", "records_deleted": 0 }
json
application/json

Set Recipe Enabled

PUT
/api/v1/recipes/installed/{key}/enabled

Switch an installed recipe on or off: all of its automations, placements and the flow that answers its connection together. Off keeps everything and runs nothing -- a connection it answers leaves each new message waiting for a person -- and on resumes it, a pause included. Refused switching on while the reason it was switched off holds.

Set Recipe Enabled › path Parameters

key
​string · required

Set Recipe Enabled › query Parameters

agent_id
​

The agent the install is for: required for a recipe that asks for an agent, refused for one installed once per organization.

The agent the install is for: required for a recipe that asks for an agent, refused for one installed once per organization.

channel_id
​

The connection the install answers, by its channel's id: required for a recipe that asks for a connection, refused for any other.

The connection the install answers, by its channel's id: required for a recipe that asks for a connection, refused for any other.

Set Recipe Enabled › Request Body

EnabledIn
enabled
​boolean · required

Set Recipe Enabled › Responses

Successful Response

An installed recipe as one thing with its parts beneath (rule 10).
InstalledRecipeOut
​required
enabled
​boolean · required
​required
handed_over
​string[] · required
id
​string · uuid · required
installed_at
​string · date-time · required
key
​string · required
missing
​string[] · required
​required
name
​string · required
​object · required
​PartOut[] · required
setup
​string · required
state
​InstallState · enum · required

Where an installed recipe stands (rules 8, 16, 18).

Enum values:
installed
incomplete
needs_value
​required
version
​integer · required
​
​
​object
​
unseen
​integer
Default: 0
​
worst_state
​string · enum
Enum values:
failing
unknown
paused
working
Default: working
PUT/api/v1/recipes/installed/{key}/enabled
curl /api/v1/recipes/installed/:key/enabled \ --request PUT \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "enabled": true }'
Example Request Body
{ "enabled": true }
json
Example Responses
{ "agent_id": "00000000-0000-0000-0000-000000000000", "channel_id": "00000000-0000-0000-0000-000000000000", "current_version": 0, "enabled": true, "error": "string", "handed_over": [ "string" ], "id": "00000000-0000-0000-0000-000000000000", "installed_at": "2024-08-25T15:00:00Z", "key": "key", "missing": [ "string" ], "moved_at": "2024-08-25T15:00:00Z", "name": "name", "parameters": {}, "parts": [ { "contact_field": "string", "editable": false, "id": "00000000-0000-0000-0000-000000000000", "key": "key", "kind": "kind", "last_run_at": "2024-08-25T15:00:00Z", "name": "string", "position": 0, "says": "string", "stage": "sets_off", "state": "failing", "state_reason": "string", "where": "where" } ], "setup": "setup", "setup_blank": { "key": "string" }, "state": "installed", "switched_off_reason": "string", "uninstall_leaves": "string", "unseen": 0, "version": 0, "worst_reason": "string", "worst_state": "working" }
json
application/json

Update Recipe Parameters

PATCH
/api/v1/recipes/installed/{key}/parameters

Change some of an installed recipe's parameter values; the rest keep theirs. Every part that uses a changed value is rewritten to it. The agent or the connection a recipe is installed for cannot change: for another, install it there.

Update Recipe Parameters › path Parameters

key
​string · required

Update Recipe Parameters › query Parameters

agent_id
​

The agent the install is for: required for a recipe that asks for an agent, refused for one installed once per organization.

The agent the install is for: required for a recipe that asks for an agent, refused for one installed once per organization.

channel_id
​

The connection the install answers, by its channel's id: required for a recipe that asks for a connection, refused for any other.

The connection the install answers, by its channel's id: required for a recipe that asks for a connection, refused for any other.

Update Recipe Parameters › Request Body

New values for some of an installed recipe's parameters; the rest keep theirs.
ParametersIn
​object · required

Update Recipe Parameters › Responses

Successful Response

An installed recipe as one thing with its parts beneath (rule 10).
InstalledRecipeOut
​required
enabled
​boolean · required
​required
handed_over
​string[] · required
id
​string · uuid · required
installed_at
​string · date-time · required
key
​string · required
missing
​string[] · required
​required
name
​string · required
​object · required
​PartOut[] · required
setup
​string · required
state
​InstallState · enum · required

Where an installed recipe stands (rules 8, 16, 18).

Enum values:
installed
incomplete
needs_value
​required
version
​integer · required
​
​
​object
​
unseen
​integer
Default: 0
​
worst_state
​string · enum
Enum values:
failing
unknown
paused
working
Default: working
PATCH/api/v1/recipes/installed/{key}/parameters
curl /api/v1/recipes/installed/:key/parameters \ --request PATCH \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "parameters": {} }'
Example Request Body
{ "parameters": {} }
json
Example Responses
{ "agent_id": "00000000-0000-0000-0000-000000000000", "channel_id": "00000000-0000-0000-0000-000000000000", "current_version": 0, "enabled": true, "error": "string", "handed_over": [ "string" ], "id": "00000000-0000-0000-0000-000000000000", "installed_at": "2024-08-25T15:00:00Z", "key": "key", "missing": [ "string" ], "moved_at": "2024-08-25T15:00:00Z", "name": "name", "parameters": {}, "parts": [ { "contact_field": "string", "editable": false, "id": "00000000-0000-0000-0000-000000000000", "key": "key", "kind": "kind", "last_run_at": "2024-08-25T15:00:00Z", "name": "string", "position": 0, "says": "string", "stage": "sets_off", "state": "failing", "state_reason": "string", "where": "where" } ], "setup": "setup", "setup_blank": { "key": "string" }, "state": "installed", "switched_off_reason": "string", "uninstall_leaves": "string", "unseen": 0, "version": 0, "worst_reason": "string", "worst_state": "working" }
json
application/json

Update Recipe

POST
/api/v1/recipes/installed/{key}/update

Bring an installed recipe to its current version now, keeping its parameter values and its records. What the new version no longer has is removed, except collections and fields, which are handed to the organization.

Update Recipe › path Parameters

key
​string · required

Update Recipe › query Parameters

agent_id
​

The agent the install is for: required for a recipe that asks for an agent, refused for one installed once per organization.

The agent the install is for: required for a recipe that asks for an agent, refused for one installed once per organization.

channel_id
​

The connection the install answers, by its channel's id: required for a recipe that asks for a connection, refused for any other.

The connection the install answers, by its channel's id: required for a recipe that asks for a connection, refused for any other.

Update Recipe › Responses

Successful Response

An installed recipe as one thing with its parts beneath (rule 10).
InstalledRecipeOut
​required
enabled
​boolean · required
​required
handed_over
​string[] · required
id
​string · uuid · required
installed_at
​string · date-time · required
key
​string · required
missing
​string[] · required
​required
name
​string · required
​object · required
​PartOut[] · required
setup
​string · required
state
​InstallState · enum · required

Where an installed recipe stands (rules 8, 16, 18).

Enum values:
installed
incomplete
needs_value
​required
version
​integer · required
​
​
​object
​
unseen
​integer
Default: 0
​
worst_state
​string · enum
Enum values:
failing
unknown
paused
working
Default: working
POST/api/v1/recipes/installed/{key}/update
curl /api/v1/recipes/installed/:key/update \ --request POST \ --header 'Authorization: Bearer <token>'
Example Responses
{ "agent_id": "00000000-0000-0000-0000-000000000000", "channel_id": "00000000-0000-0000-0000-000000000000", "current_version": 0, "enabled": true, "error": "string", "handed_over": [ "string" ], "id": "00000000-0000-0000-0000-000000000000", "installed_at": "2024-08-25T15:00:00Z", "key": "key", "missing": [ "string" ], "moved_at": "2024-08-25T15:00:00Z", "name": "name", "parameters": {}, "parts": [ { "contact_field": "string", "editable": false, "id": "00000000-0000-0000-0000-000000000000", "key": "key", "kind": "kind", "last_run_at": "2024-08-25T15:00:00Z", "name": "string", "position": 0, "says": "string", "stage": "sets_off", "state": "failing", "state_reason": "string", "where": "where" } ], "setup": "setup", "setup_blank": { "key": "string" }, "state": "installed", "switched_off_reason": "string", "uninstall_leaves": "string", "unseen": 0, "version": 0, "worst_reason": "string", "worst_state": "working" }
json
application/json

Install Recipe

POST
/api/v1/recipes/{key}/install

Install a recipe with values for its parameters. It creates the recipe's collections, tools, flows, automations, placements in an agent's slots and the flow that answers a connection, owned by the recipe and switched on, so it starts running. A recipe that asks for an agent is installed once per agent, the one its agent parameter names, and one that asks for a connection once per connection; that agent or connection is fixed once installed. Installing it again -- for the same agent or connection -- changes its parameters and finishes an install that was left incomplete; it never makes a second copy. For a recipe that proposes labels, the first install may give labels: the organization's own labels by id and new ones by name and line, which are created in the organization's vocabulary as its own; those that join fill the recipe's labels parameter. Ask the person first: an installed recipe runs.

Install Recipe › path Parameters

key
​string · required

Install Recipe › Request Body

The values given for the recipe's parameters, by name, and -- for a recipe that proposes labels, on its first install -- the labels the client keeps (rules 50-53).
InstallIn
​
​object

Install Recipe › Responses

Successful Response

An installed recipe as one thing with its parts beneath (rule 10).
InstalledRecipeOut
​required
enabled
​boolean · required
​required
handed_over
​string[] · required
id
​string · uuid · required
installed_at
​string · date-time · required
key
​string · required
missing
​string[] · required
​required
name
​string · required
​object · required
​PartOut[] · required
setup
​string · required
state
​InstallState · enum · required

Where an installed recipe stands (rules 8, 16, 18).

Enum values:
installed
incomplete
needs_value
​required
version
​integer · required
​
​
​object
​
unseen
​integer
Default: 0
​
worst_state
​string · enum
Enum values:
failing
unknown
paused
working
Default: working
POST/api/v1/recipes/{key}/install
curl /api/v1/recipes/:key/install \ --request POST \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "labels": [ { "description": "", "joins": true, "label_id": "00000000-0000-0000-0000-000000000000", "name": "string", "proposal": "string" } ], "parameters": {} }'
Example Request Body
{ "labels": [ { "description": "", "joins": true, "label_id": "00000000-0000-0000-0000-000000000000", "name": "string", "proposal": "string" } ], "parameters": {} }
json
Example Responses
{ "agent_id": "00000000-0000-0000-0000-000000000000", "channel_id": "00000000-0000-0000-0000-000000000000", "current_version": 0, "enabled": true, "error": "string", "handed_over": [ "string" ], "id": "00000000-0000-0000-0000-000000000000", "installed_at": "2024-08-25T15:00:00Z", "key": "key", "missing": [ "string" ], "moved_at": "2024-08-25T15:00:00Z", "name": "name", "parameters": {}, "parts": [ { "contact_field": "string", "editable": false, "id": "00000000-0000-0000-0000-000000000000", "key": "key", "kind": "kind", "last_run_at": "2024-08-25T15:00:00Z", "name": "string", "position": 0, "says": "string", "stage": "sets_off", "state": "failing", "state_reason": "string", "where": "where" } ], "setup": "setup", "setup_blank": { "key": "string" }, "state": "installed", "switched_off_reason": "string", "uninstall_leaves": "string", "unseen": 0, "version": 0, "worst_reason": "string", "worst_state": "working" }
json
application/json

notificationsdata-retention