To let an assistant use these tools, grant AI agents on the consent screen, or just
Integrations (custom HTTP) under its Fine-tune. The scope is integrations.
Read tools work with Read only or Read & write access; write tools only with
Read & write.
Your assistant doesn't see these tools straight away. It finds them with search_tools or
describe_tools, and runs one with use_tool, passing its name and
arguments. Most assistants do this for you: just ask for what you want.
What your assistant is told about this group
Connections to other systems. list_integration_providers says what can be connected and how. Provider connections (Google Calendar and Sheets, Google Ads, Meta ads, webhooks, API-key providers): list, rename, pick settings from get_integration_connection_options, rotate credentials, revoke; Google and Meta ones connect in the browser. An ad platform (Google Ads, Meta) needs its account, and its conversion actions (Google) or pixel and events (Meta), chosen before it sends leads, bookings and sales back against ad clicks: list_ad_conversions shows what was sent and sync_ad_spend pulls cost per campaign now. To check one works: a Meta connection with a test_event_code set sends a made-up lead to Test events with send_ad_test_event (while the code is set every conversion goes to Test events only: clear it to go live); validate_ad_connection checks a Google Ads one without recording anything. A custom HTTP integration is a definition you build: outbound, to call another system's API (a base URL; sign-in details read from secret variables such as secret.api_key; endpoints, each with a body template written in Liquid; lookups; and optionally an agent tool per endpoint), or inbound, to receive another system's webhooks. Build order: create_integration_definition, then variables, then point auth_settings at them, then endpoints, test_integration_endpoint (list_integration_test_samples gives real event variables), then the agent tool. To make it fire on its own, add a call_endpoint action to a CRM workflow (save_crm_workflow, e.g. on lead.created to send leads on: write its template from get_lead_payload_reference, which checks it) or a product lifecycle event (create_lifecycle_action), using the definition's managed connection. From an API guide or spec the person gives you: read all of it first, then in one message say what's missing or contradictory (test versus live URL, where the key goes, account or campaign ids, fields their API requires that the CRM doesn't hold, clashing field names) and ask, before building anything. Ask once: once they've answered, build, taking a sensible default for anything still open (send every new lead, leave out fields the CRM doesn't hold) and saying what you chose. Build against their test server. Never ask for a secret in chat or make one up: auth_settings can only point at a variable that exists, so create the secret with the value REPLACE_ME, point auth at it (an API key is auth_type api_key with {header, value_ref}, never a header or body field), and tell the person to set the real value under Variables on the definition page before testing. When the API reports failures inside a 2xx, add success_conditions so they count as failures. To test with made-up data, invent params in the template's shape for test_integration_endpoint: never create CRM records to test with. export_integration_definition and import_integration_definition copy one between orgs. Each definition has one connection, always on, that Subcontext manages; updating a variable's value repairs it. Secret values are never returned. A paused connection stopped because its calls kept failing: it tries again by itself every 15 minutes, and resume_integration_connection restarts it once the other system is fixed. Revoking, deleting and testing write endpoints affect live systems: confirm first.
The descriptions below are the ones your assistant reads, so they're written for it. When a connection covers more than one
organisation, the assistant passes org (the organisation's slug, from list_orgs) to say which one.
list_integration_providers
Read List integration providers
Every kind of system the organisation can connect, and how. connect is "settings" (create_integration_connection with these settings and credentials), "browser" (OAuth: the person connects it on the Integrations page; send them the url) or "definition" (a custom HTTP integration: create_integration_definition, or import_integration_definition from a config file). available is false when the plan doesn't include it. Owners and managers.
Arguments
| Field | Type | Description |
|---|---|---|
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
list_integration_connections
Read List integration connections
The organisation's connected systems (Google Calendar and Sheets, API-key providers, and each custom integration's managed connection) with status. Credentials are never returned.
Arguments
| Field | Type | Description |
|---|---|---|
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
get_integration_connection_options
Read Get a connection's setting choices
The values a connection's settings can take, read live from the connected account: calendar_id (its calendars), spreadsheet_id (its spreadsheets) and, once a spreadsheet is set, sheet_name (its tabs). Use before update_integration_connection so you set a real id. A setting the account can't list is left out: ask the person for it.
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | Connection id |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
get_integration_connection
Read Get an integration connection
One connection's status and settings. Credentials show as present or absent only.
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
create_integration_connection
Write Connect an API-key integration
Connect a provider that uses an API key and settings. Google providers connect in the browser (OAuth) and custom HTTP integrations through their definition.
Arguments
| Field | Type | Description |
|---|---|---|
| provider_key required | string | |
| name required | string | |
| config | object | The provider's declared settings |
| credentials | object | Secrets, e.g. {api_key}. Stored encrypted and never returned |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
update_integration_connection
Write Update an integration connection
Rename a provider connection, change its settings, or rotate its credentials (fresh credentials heal an auth_error connection). Only what you pass changes.
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | |
| name | string | |
| config | object | Settings to merge, e.g. {calendar_id} or {spreadsheet_id, sheet_name} |
| credentials | object | Secrets to rotate; blank values keep the stored ones |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
revoke_integration_connection
Write Revoke an integration connection
Revoke a provider connection. THIS IS PERMANENT AND STOPS EVERYTHING WIRED TO A LIVE CONNECTION (bookings, sheet exports, workflows): confirm with the user first.
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
resume_integration_connection
Write Resume a paused integration connection
Put a paused connection (status paused: its calls kept failing, so sending stopped) back to active now, instead of waiting for the next send its 15-minute cool-off lets through. Use it once the person says the other system is fixed. Works for a custom integration's managed connection too.
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
sync_ad_spend
Write Sync ad spend now
Queue a Google Ads or Meta connection's spend sync (daily cost per campaign) now rather than at the morning sweep. The first sync of a connection covers 90 days, later ones the last 3.
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
send_ad_test_event
Write Send a Meta test event
Send one made-up Lead (a placeholder click and a hashed test email) to a Meta connection's pixel under its test event code, and report what Meta said (events_received, fbtrace_id, or its error). It shows in Events Manager under the pixel's Test events and nowhere else. Needs the connection's test_event_code setting (from Events Manager, Test events; set it with update_integration_connection). While that code is set ALL of the connection's conversions go to Test events only: clear it to go live. Google Ads connections use validate_ad_connection.
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
validate_ad_connection
Write Validate a Google Ads connection
Check a Google Ads connection end to end: a validate-only upload of one made-up click conversion to one of its conversion actions. Google checks the sign-in, developer token, ad account and conversion action and records nothing. ok: true (Google objecting only to the made-up click id counts as a pass) means conversions will be accepted; otherwise message says what to fix. Meta connections use send_ad_test_event.
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | |
| conversion_action | string | Resource name (customers/1/conversionActions/2) of one of the connection's configured conversion actions. Default: the lead stage's, else the first one configured |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
list_ad_conversions
Read List ad conversions
The leads, bookings and sales a Google Ads or Meta connection has sent back against ad clicks (or skipped / failed to send, with the reason), newest first, plus counts by status. A conversion is only sent when the journey started from the firm's own ad (a gclid / fbclid), or for an outcome under a rule, on hashed email and phone when enhanced matching is on. Also lists the connection's outcome rules and any retraction or restatement of a sent outcome.
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | |
| status | string |
One of: "pending", "sent", "failed", "skipped"
|
| limit | integer | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
save_ad_conversion_rule
Write Send an outcome to an ad platform
Send an outcome type (one off the engagement ladder, e.g. commission paid or policy renewed: the ladder is set in the connection's settings) to a Google Ads or Meta connection as a conversion. destination is the Google Ads conversion action resource name (customers/123/conversionActions/456) or the Meta event name; value_measure is a money measure key for its value. Replaces the type's existing rule. Changes what the org reports to its ad platform: confirm first. Owner or manager only.
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | The connection id. |
| outcome_type required | string | |
| destination required | string | |
| value_measure | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
delete_ad_conversion_rule
Write Stop sending an outcome to an ad platform
Remove an outcome rule from a Google Ads or Meta connection (list_ad_conversions lists them). Conversions already sent stay sent. Owner or manager only.
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | The connection id. |
| rule_id required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
create_integration_spreadsheet
Write Create a spreadsheet for a connection
Create a new Google Sheet in the connected account and point the Sheets connection at it.
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | The Google Sheets connection |
| title required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
list_integration_definitions
Read List custom integrations
The organisation's custom HTTP integration definitions (outbound APIs it calls, inbound webhooks it receives).
Arguments
| Field | Type | Description |
|---|---|---|
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
get_integration_definition
Read Get a custom integration
One definition in full: auth settings, endpoints with their agent tools, variables (secret values shown as present or absent only), lookups and the managed connection.
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
create_integration_definition
Write Create a custom integration
Create a custom HTTP integration. Direction is fixed at creation: outbound (we call their API) or inbound (they send us webhooks).
Arguments
| Field | Type | Description |
|---|---|---|
| direction required | string |
One of: "outbound", "inbound"
|
| name required | string | |
| description | string | |
| base_url | string | Outbound only: the API root, e.g. https://api.example.com/v1 |
| auth_type | string |
Outbound only
One of: "none", "api_key", "bearer_token", "basic_auth", "oauth2_client_credentials"
|
| auth_settings | object | Outbound only. Variable REFERENCES, never values: api_key {header, value_ref}, bearer_token {token_ref}, basic_auth {username_ref, password_ref}, oauth2_client_credentials {token_url, client_id_ref, client_secret_ref, client_auth} where client_auth is client_secret_post (default: id and secret in the form body) or client_secret_basic (an HTTP Basic header). A ref looks like secret.name and must already exist, so a new definition starts with auth_type none: create it, add the secret with create_integration_variable, then set auth with update_integration_definition. |
| default_headers | object | Outbound only: flat {header: value} sent on every call. A value is plain text or a variable reference written exactly as secret.name or static.name, never {{ }}. No Authorization, and no API key: put a key in auth_type api_key with auth_settings {header, value_ref} |
| webhook_config | object | Inbound only: {kind_path, enrichment_kinds (list), enrichment_source_policy_id_path, header, secret_ref, outcome_kinds (list: events recorded as lead outcomes), outcome_mapping (the outcome upload mapping shape with dotted payload paths: {lead: {id, external_id, email, phone}, type_column | type, occurred_at, deal_ref, event_id, note, values: {measure_key: path}})}. An empty kind_path turns event routing off. |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
update_integration_definition
Write Update a custom integration
Edit a definition. Only the fields you pass change; direction can't.
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | |
| name | string | |
| description | string | |
| base_url | string | Outbound only: the API root, e.g. https://api.example.com/v1 |
| auth_type | string |
Outbound only
One of: "none", "api_key", "bearer_token", "basic_auth", "oauth2_client_credentials"
|
| auth_settings | object | Outbound only. Variable REFERENCES, never values: api_key {header, value_ref}, bearer_token {token_ref}, basic_auth {username_ref, password_ref}, oauth2_client_credentials {token_url, client_id_ref, client_secret_ref, client_auth} where client_auth is client_secret_post (default: id and secret in the form body) or client_secret_basic (an HTTP Basic header). A ref looks like secret.name; create the variable first. |
| default_headers | object | Outbound only: flat {header: value} sent on every call. A value is plain text or a variable reference written exactly as secret.name or static.name, never {{ }}. No Authorization, and no API key: put a key in auth_type api_key with auth_settings {header, value_ref} |
| webhook_config | object | Inbound only: {kind_path, enrichment_kinds (list), enrichment_source_policy_id_path, header, secret_ref, outcome_kinds (list: events recorded as lead outcomes), outcome_mapping (the outcome upload mapping shape with dotted payload paths: {lead: {id, external_id, email, phone}, type_column | type, occurred_at, deal_ref, event_id, note, values: {measure_key: path}})}. An empty kind_path turns event routing off. |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
delete_integration_definition
Write Delete a custom integration
Delete a definition with its endpoints, agent tools, variables and connection history. IF IT IS IN USE (AGENTS CALL ITS TOOLS, OR IT SYNCS POLICIES OR RECEIVES WEBHOOKS) THIS BREAKS THAT: confirm with the user first.
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
import_integration_definition
Write Import a custom integration
Create a definition from a v2 backend_api config file (the export format). Secret variables arrive with placeholder values; set the real ones with update_integration_variable.
Arguments
| Field | Type | Description |
|---|---|---|
| config required | object or string | The whole exported file, as an object or its JSON text: {"backend_api": {...}} |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
export_integration_definition
Read Export a custom integration
A custom integration as a portable config file (the same file the Export button downloads): pass config to import_integration_definition to copy it into another organisation. Secret values are never included, only their names.
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | Definition id |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
list_integration_test_samples
Read List integration test samples
Real recent events to test a custom integration's endpoints with: product lifecycle events (policy bound, cancelled...) and CRM lead events, each with the exact variables an endpoint's template is rendered with when that event calls it. Pass a sample's vars as params to test_integration_endpoint.
Arguments
| Field | Type | Description |
|---|---|---|
| definition_id required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
get_lead_payload_reference
Read Get the lead payload reference
What a CRM workflow's call_endpoint action sends an integration endpoint, the same for every trigger: the variables a body template can use ({{ lead.first_name }}, {{ lead.fields.<key> }}, {{ event_type }}...), the organisation's custom fields, and a live example from its newest lead. Read this BEFORE writing an endpoint template for a workflow, and pass your draft as template to see every name it uses that the workflow wouldn't fill (unknown names render blank, so workflows refuse them). An endpoint with no body template is sent this whole payload as JSON.
Arguments
| Field | Type | Description |
|---|---|---|
| template | string | A draft Liquid body template to check |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
get_integration_endpoint
Read Get an integration endpoint
One endpoint of a custom integration in full, with its agent tool and what calls it (used_by: CRM workflows and product lifecycle actions). Check used_by before deleting or changing its template.
Arguments
| Field | Type | Description |
|---|---|---|
| definition_id required | string | |
| id required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
create_integration_endpoint
Write Create an integration endpoint
Add an outbound call to a custom integration.
Arguments
| Field | Type | Description |
|---|---|---|
| definition_id required | string | |
| key required | string | Lowercase identifier, e.g. create_policy |
| name | string | |
| path required | string | Path under the base URL; {{param}} placeholders allowed |
| http_method required | string |
One of: "get", "post", "put", "patch", "delete"
|
| request_body_template | string | Liquid body for POST/PUT/PATCH; {{ secret.name }} / {{ static.name }} and lookups available. For a CRM workflow, call get_lead_payload_reference FIRST and use only the names it lists (it checks a draft): lead.fields.* covers custom fields that already exist, nothing else. Leave it empty to send the whole lead payload |
| content_format | string |
One of: "json", "form", "xml"
|
| headers | object | Flat {header: value}. A value is a literal or EXACTLY a variable ref like secret.name, never Liquid ({{ }} is rejected). API keys belong in the definition's auth_settings, not here |
| success_conditions | array of object | Rules deciding a 2xx actually succeeded: {source, operator, property, target}. source is status_code, response_body, json_body, xml_body or header (the last three need a property). Add them whenever the API can reject inside a 2xx: e.g. it answers 200 with FAIL in the body, {source: response_body, operator: not_contains, target: FAIL} |
| request_schema | object | JSON Schema of the endpoint's parameters (object with properties) |
| policy_operation | string |
Bind to a policy lifecycle operation (request_change: changes asked of a PAS that keeps the policy record)
One of: "create_policy", "cancel_policy", "endorse_policy", "request_change"
|
| external_id_path | string | Dotted path to the created record's id (required for create_policy) |
| pull_source | boolean | GET endpoint the platform polls for records |
| pull_config | object | Pull settings: {strategy (cursor, page_number, offset_limit, auto), records_path, source_policy_id_path, ...} |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
update_integration_endpoint
Write Update an integration endpoint
Edit an endpoint. Only the fields you pass change.
Arguments
| Field | Type | Description |
|---|---|---|
| definition_id required | string | |
| id required | string | |
| key | string | Lowercase identifier, e.g. create_policy |
| name | string | |
| path | string | Path under the base URL; {{param}} placeholders allowed |
| http_method | string |
One of: "get", "post", "put", "patch", "delete"
|
| request_body_template | string | Liquid body for POST/PUT/PATCH; {{ secret.name }} / {{ static.name }} and lookups available. For a CRM workflow, call get_lead_payload_reference FIRST and use only the names it lists (it checks a draft): lead.fields.* covers custom fields that already exist, nothing else. Leave it empty to send the whole lead payload |
| content_format | string |
One of: "json", "form", "xml"
|
| headers | object | Flat {header: value}. A value is a literal or EXACTLY a variable ref like secret.name, never Liquid ({{ }} is rejected). API keys belong in the definition's auth_settings, not here |
| success_conditions | array of object | Rules deciding a 2xx actually succeeded: {source, operator, property, target}. source is status_code, response_body, json_body, xml_body or header (the last three need a property). Add them whenever the API can reject inside a 2xx: e.g. it answers 200 with FAIL in the body, {source: response_body, operator: not_contains, target: FAIL} |
| request_schema | object | JSON Schema of the endpoint's parameters (object with properties) |
| policy_operation | string |
Bind to a policy lifecycle operation (request_change: changes asked of a PAS that keeps the policy record)
One of: "create_policy", "cancel_policy", "endorse_policy", "request_change"
|
| external_id_path | string | Dotted path to the created record's id (required for create_policy) |
| pull_source | boolean | GET endpoint the platform polls for records |
| pull_config | object | Pull settings: {strategy (cursor, page_number, offset_limit, auto), records_path, source_policy_id_path, ...} |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
delete_integration_endpoint
Write Delete an integration endpoint
Delete an endpoint and its agent tool. Refused while agent versions use the tool.
Arguments
| Field | Type | Description |
|---|---|---|
| definition_id required | string | |
| id required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
test_integration_endpoint
Write Test an integration endpoint
Call the endpoint for real with sample params and report the status, response excerpt and success checks. A test of a write endpoint CREATES OR CHANGES REAL DATA in the other system: confirm first.
Arguments
| Field | Type | Description |
|---|---|---|
| definition_id required | string | |
| id required | string | |
| params | object | Sample values for the path and body template: a sample's vars from list_integration_test_samples, or invented ones in the same shape when the person wants made-up test data. Never create real records just to test |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
create_integration_endpoint_tool
Write Expose an endpoint to agents
Create the agent tool for an endpoint. Left-out fields take the suggestions: a name from the endpoint key, approval for anything but GET, parameters from the endpoint's request schema.
Arguments
| Field | Type | Description |
|---|---|---|
| definition_id required | string | |
| endpoint_id required | string | |
| name | string | Tool name agents see; starts with a letter |
| description required | string | What the tool does, for the agent |
| requires_approval | boolean | Whether a human approves each call |
| parameters | array of object | Parameter rows: {name, type (string, integer, number, boolean), description, required} |
| response_fields | array of string | Top-level response keys the agent sees (empty = all) |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
update_integration_endpoint_tool
Write Update an endpoint's agent tool
Edit an endpoint's agent tool, or disable it. Only the fields you pass change.
Arguments
| Field | Type | Description |
|---|---|---|
| definition_id required | string | |
| endpoint_id required | string | |
| status | string |
One of: "active", "disabled"
|
| name | string | Tool name agents see; starts with a letter |
| description | string | What the tool does, for the agent |
| requires_approval | boolean | Whether a human approves each call |
| parameters | array of object | Parameter rows: {name, type (string, integer, number, boolean), description, required} |
| response_fields | array of string | Top-level response keys the agent sees (empty = all) |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
delete_integration_endpoint_tool
Write Delete an endpoint's agent tool
Remove an endpoint's agent tool. Refused while agent versions carry it.
Arguments
| Field | Type | Description |
|---|---|---|
| definition_id required | string | |
| endpoint_id required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
create_integration_variable
Write Add an integration variable
Add a secret (API keys, tokens) or static value to a custom integration; reference it as secret.name or static.name. Secret values are never shown again. Never ask for a secret's value in chat or make one up: leave value out and the secret is created with the placeholder REPLACE_ME, so auth can point at it now; then send the person to Variables on the definition page to set the real value.
Arguments
| Field | Type | Description |
|---|---|---|
| definition_id required | string | |
| name required | string | |
| kind required | string |
One of: "secret", "static"
|
| value | string | Required for a static value. For a secret, only a value the person gave you; leave it out to create the placeholder |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
update_integration_variable
Write Rotate an integration variable
Replace a variable's value (name and kind are fixed). Rotating credentials heals an integration in auth_error.
Arguments
| Field | Type | Description |
|---|---|---|
| definition_id required | string | |
| id required | string | |
| value required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
delete_integration_variable
Write Delete an integration variable
Delete a variable. Refused while templates, headers, auth settings or lookups reference it.
Arguments
| Field | Type | Description |
|---|---|---|
| definition_id required | string | |
| id required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
create_integration_lookup
Write Add an integration lookup
Add a label to value table templates use via the lookup filter, e.g. {{ cover | lookup: "cover_codes" }}.
Arguments
| Field | Type | Description |
|---|---|---|
| definition_id required | string | |
| name required | string | |
| entries | array of any | {label: value} pairs, or a list of {label:, value:} rows |
| default_value | string | Used when no label matches |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
update_integration_lookup
Write Update an integration lookup
Edit a lookup. Entries replace the whole table; only the fields you pass change.
Arguments
| Field | Type | Description |
|---|---|---|
| definition_id required | string | |
| id required | string | |
| name | string | |
| entries | array of any | {label: value} pairs, or a list of {label:, value:} rows |
| default_value | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
delete_integration_lookup
Write Delete an integration lookup
Delete a lookup. Refused while an endpoint template uses it.
Arguments
| Field | Type | Description |
|---|---|---|
| definition_id required | string | |
| id required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |
get_integration_log
Read Get an integration log
One call to or from a connected system in full, with the request and response excerpts (secrets redacted).
Arguments
| Field | Type | Description |
|---|---|---|
| id required | string | |
| org | string | Organisation slug: required when this authorization covers more than one organisation (see list_orgs) |