Settings
The brand’s channel settings: the policy documents and contact a brand edits itself, and the groups managed with Linq.
Get channel settings
Update channel settings
ModelsExpand Collapse
BrandSettings object { agent_enabled, app_extensions, brand_id, 16 more } The brand’s channel settings: what a brand edits itself, plus the managed groups and the link state, read-only.
The brand’s channel settings: what a brand edits itself, plus the managed groups and the link state, read-only.
Whether your AI agent is switched on. true for a brand that has never
changed it.
While this is false we stop delivering webhooks to your brand’s
endpoints, so your agent is told nothing and answers nothing. Events that
occur during the pause are never delivered; not held and replayed
when you switch back on, which is what makes this safe to use during an
incident: your agent will not wake up and answer an hour of stale
messages.
The mute covers your WHOLE webhook feed, not only the events an agent
answers: message.sent / message.failed, consent.expired and the
invitation-batch events travel the same fan-out, so delivery outcomes and
invitation status go dark too and do not backfill. The read side is
unaffected and is the during-mute channel; GET /v1/messages/{msg},
GET /v1/invitations/{inv} and GET /v1/chats/{chat}/events all still
answer, so nothing is lost from the record, only from the push.
It does not stop you sending. Your API key keeps working while the switch is off, which is what lets a human desk carry a conversation your agent is muted for.
app_extensions: object { apps } The registered apps that are OPERATIVE for your brand, keyed by the same
app_key space PUT /v1/settings/integrations/app_extensions writes:
your stored registry when you have one, the deploy default otherwise, and
managed[name=app_extensions].source says which.
Read this before assembling a write. The registry’s precedence unit is
the WHOLE set: a write replaces your stored registry outright, and a stored
registry masks the deploy default entirely. So an app you leave out of a
write stops resolving on the send path: a 200 and a silently
unregistered app. This object is what makes a correct whole-set write
possible: it is the complete operative registry, so send it back with your
edits applied rather than assembling one from your own records.
Unlike apple_pay and oauth above, this key is ALWAYS PRESENT: an
empty apps is how “nothing is registered” is said, and it is safe to
edit from. A registry is never “unconfigured” the way a merchant can be:
one is always operative, so there is always an answer. The only way this
key is absent is a platform build older than the field, and a client that
cares about the difference should read an absent key as “cannot speak to
the registry” and refuse to write the group; never as an empty one.
App icons are never returned, on the same terms as the certificate and the
client secret above: app_icon_set per entry is the whole of it.
The registered apps that are OPERATIVE for your brand, keyed by the same
app_key space PUT /v1/settings/integrations/app_extensions writes:
your stored registry when you have one, the deploy default otherwise, and
managed[name=app_extensions].source says which.
Read this before assembling a write. The registry’s precedence unit is
the WHOLE set: a write replaces your stored registry outright, and a stored
registry masks the deploy default entirely. So an app you leave out of a
write stops resolving on the send path: a 200 and a silently
unregistered app. This object is what makes a correct whole-set write
possible: it is the complete operative registry, so send it back with your
edits applied rather than assembling one from your own records.
Unlike apple_pay and oauth above, this key is ALWAYS PRESENT: an
empty apps is how “nothing is registered” is said, and it is safe to
edit from. A registry is never “unconfigured” the way a merchant can be:
one is always operative, so there is always an answer. The only way this
key is absent is a platform build older than the field, and a client that
cares about the difference should read an absent key as “cannot speak to
the registry” and refuse to write the group; never as an empty one.
App icons are never returned, on the same terms as the certificate and the
client secret above: app_icon_set per entry is the whole of it.
The linked business id, "" when no channel is linked. The full row is GET /v1/channels.
consent_mode: "linq_managed" or "brand_attested"Who captures consent GRANTS for this brand. linq_managed (the
default): we capture grants, and a grant attested through
POST /v1/consent answers HTTP 409 code 2014.
brand_attested: you attest grants yourself through that endpoint.
Read-only here: the mode is operator-set; contact support to change it.
Opt-outs are honored in both modes; the mode governs only who may
record a GRANT.
Who captures consent GRANTS for this brand. linq_managed (the
default): we capture grants, and a grant attested through
POST /v1/consent answers HTTP 409 code 2014.
brand_attested: you attest grants yourself through that endpoint.
Read-only here: the mode is operator-set; contact support to change it.
Opt-outs are honored in both modes; the mode governs only who may
record a GRANT.
escalation_handling: "managed" or "self_managed"Who runs escalation for this brand: your stored choice, exactly as you
set it, and self_managed until you set one. See escalation_handling
on the update request for what each value means. While
escalation_handling_locked is true this stored value is not
operative: we have forced the brand to managed escalation.
Who runs escalation for this brand: your stored choice, exactly as you
set it, and self_managed until you set one. See escalation_handling
on the update request for what each value means. While
escalation_handling_locked is true this stored value is not
operative: we have forced the brand to managed escalation.
true while we hold this brand on managed escalation regardless of
its stored choice. It is the state we use when monitoring shows a
partner-run human path not answering. Updates to escalation_handling are
refused while it is true; contact support to release it.
The read-only groups, as display strings with a managed-by marker.
The read-only groups, as display strings with a managed-by marker.
Who changes it. Always linq today: these are registered with the platform as well as with us, so they change together; write to your support contact.
name: "apple_pay_merchant" or "app_extensions" or "oauth"Which setting: the Apple Pay merchant, the registered iMessage apps, or customer authentication (OAuth).
Which setting: the Apple Pay merchant, the registered iMessage apps, or customer authentication (OAuth).
Whether the group is operative for a send, evaluated on the RESOLVED
view: your brand’s stored configuration when present, the deploy
default otherwise. false means a send needing this group is refused
(409) until it is configured.
Monotonic policy version. Bumping it (see the update’s bump_policy_version) is what re-notifies customers of a policy change, so it only ever moves explicitly.
The brand’s rich-link default card image (att_…), "" when the platform default stands.
apple_pay: optional object { display_name, domain, merchant_id, merchant_identity_cert_set } The brand’s Apple Pay configuration, non-secret fields only. ABSENT when
the group is not configured; never an object of empty strings, the same
absent-means-unconfigured promise business_hours makes.
The merchant-identity certificate is NEVER returned, here or anywhere:
it goes up write-only and lives in the secret store. merchant_identity_cert_set
is the whole of what this contract says about it, so a client can offer
“leave blank to keep the stored certificate” without learning anything.
The brand’s Apple Pay configuration, non-secret fields only. ABSENT when
the group is not configured; never an object of empty strings, the same
absent-means-unconfigured promise business_hours makes.
The merchant-identity certificate is NEVER returned, here or anywhere:
it goes up write-only and lives in the secret store. merchant_identity_cert_set
is the whole of what this contract says about it, so a client can offer
“leave blank to keep the stored certificate” without learning anything.
Business hours as stored: a LIST of ["HH:MM","HH:MM"] ranges per
lowercase weekday key (mon…sun), so a lunch break or a split shift is
expressible.
ABSENT: the key is not present at all; when the brand publishes no
hours, never {} and never an invented 9-5. That is the same promise
GET /v1/chats/{chat}’s brand makes about the same document: an
unconfigured brand has no hours model and the platform treats it as always
open, which is a different fact from “open 24/7 by policy” and is not
spelled the same way.
The IANA zone the hours are stated in (America/New_York). Absent when
unset. Hours are never configured without it; the two keys are
independently optional here only because a direct operator edit can leave
a zone behind with no hours.
oauth: optional object { authorize_url, client_id, client_secret_set, 4 more } The brand’s OAuth configuration, non-secret fields only. ABSENT when the
group is not configured. The client secret is never returned, on the same
terms as the certificate above.
The brand’s OAuth configuration, non-secret fields only. ABSENT when the group is not configured. The client secret is never returned, on the same terms as the certificate above.
ManagedSetting object { managed_by, name, set, 2 more } One channel-specific setting managed WITH Linq rather than edited here;
reported as a display string so a settings screen can show the truth about
what exists without pretending a brand can change it on this API.
One channel-specific setting managed WITH Linq rather than edited here; reported as a display string so a settings screen can show the truth about what exists without pretending a brand can change it on this API.
Who changes it. Always linq today: these are registered with the platform as well as with us, so they change together; write to your support contact.
name: "apple_pay_merchant" or "app_extensions" or "oauth"Which setting: the Apple Pay merchant, the registered iMessage apps, or customer authentication (OAuth).
Which setting: the Apple Pay merchant, the registered iMessage apps, or customer authentication (OAuth).
Whether the group is operative for a send, evaluated on the RESOLVED
view: your brand’s stored configuration when present, the deploy
default otherwise. false means a send needing this group is refused
(409) until it is configured.
SettingsIntegrations
The brand’s channel settings: the policy documents and contact a brand edits itself, and the groups managed with Linq.