Connects a NEW channel to this Application in one step — mints the doorway and claims its address.
Creates a channel inside this Application; a channel is never created unbound. Mints the inbound doorway (a MANUAL inbound channel binding, or the agent's messaging endpoint for endpoint-owned providers such as Telegram, whose config is both credential and address) and creates its messaging entry point here. The agent must already be a member of this Application. Returns 409 when the address is already used by another Application; move a claimed address with `:move` instead. Returns the one-time webhook URL when a new channel binding was created. An Email (Gmail) channel is checked and set up further: a connection without the `gmail.modify` scope is refused before anything is created (400, code `EMAIL_CHANNEL_SCOPES_MISSING`). Its admission follows the Application's policy for new senders, which connect does not change; the response's `email.unknownSenders` says what that policy does to someone who writes in, and `warnings` lists what did not stop the connect, such as `AGENT_SENDS_GMAIL`.
Authorization
Bearer JWT Authorization header using the Bearer scheme. Enter 'Bearer' [space] and then your token.
In: header
Path Parameters
The target Network id.
uuidThe tenant identifier
The integration config, channel address parameters, and target member agent.
The tenant integration config carrying the channel (the connection's credentials).
uuidThe member agent the channel routes to. It must already be a member of this Network.
Operator-facing channel name; defaults to the config's display name.
Provider-specific address parameters selecting the channel on the connection (Slack channel id, phone number, …). Ignored for endpoint-owned providers, whose config IS the address (a Telegram bot token).
Endpoint-owned providers only: when the agent already fronts a different config's bot for this provider (one active bot per agent per provider), deactivate that bot and connect this one in its place. Without it such a connect is rejected 409 so a bot swap is always an explicit choice. The displaced bot keeps its endpoint record (reactivatable later); its doorway rows are removed.
Email (Gmail) channels only: the channel's email settings, the same fields as its emailSettings
resource without the version. Saved before the channel is activated; on a channel connected before, they
replace its settings. Omitted, a new channel
starts on the defaults (Draft, no recipient filter, no signature, 300 runs a day) and an existing one keeps
its settings. Refused (400) on any other provider.
Response Body
curl -X POST "https://api.fruxon.com/v1/tenants/string/networks/497f6eca-6276-4993-bfeb-53cbbbba6f08/entryPoints/connect" \ -H "Content-Type: application/json" \ -d '{}'{
"entryPoint": {
"id": "00000000-0000-0000-0000-000000000000",
"networkId": "00000000-0000-0000-0000-000000000000",
"networkIntegrationBindingId": "00000000-0000-0000-0000-000000000000",
"kind": "MESSAGING",
"provider": "string",
"externalAddress": "string",
"displayName": "string",
"integrationConfigId": "00000000-0000-0000-0000-000000000000",
"integrationConfigName": "string",
"agentId": "string",
"agentMembershipId": "00000000-0000-0000-0000-000000000000",
"unknownSenderAdmission": "REQUEST_ACCESS",
"knownUnenrolledAdmission": "REQUEST_ACCESS",
"escalationDeskId": "00000000-0000-0000-0000-000000000000",
"routingPolicyKey": "string",
"sourceKind": "CHANNEL_BINDING",
"sourceId": "00000000-0000-0000-0000-000000000000",
"operationalStatus": "ACTIVE",
"createdAt": 0,
"modifiedAt": 0
},
"webhookUrl": "string",
"email": {
"settings": {
"replyMode": "DRAFT",
"recipientFilter": [
"string"
],
"groupAddress": "string",
"staffFromMailboxDomain": false,
"staffAddresses": [
"string"
],
"signature": "string",
"mailboxDailyRunLimit": 0,
"version": 0,
"activationState": "PENDING",
"activatedAtMs": 0
},
"unknownSenders": {
"outcome": "ANSWERED",
"admission": "REQUEST_ACCESS",
"fromChannelOverride": false,
"provisioningRule": "MATCH_LIST",
"explanation": "string"
},
"escalationDeskId": "00000000-0000-0000-0000-000000000000",
"escalationDeskCreated": false
},
"warnings": [
{
"code": "string",
"message": "string"
}
],
"replacedMessagingEndpointId": "00000000-0000-0000-0000-000000000000"
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"property1": null,
"property2": null
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"property1": null,
"property2": null
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"property1": null,
"property2": null
}Attaches an inbound doorway to this Network so its real inbound routes here.
Materializes (or adopts off another Network) the doorway's messaging entry point on this Application, so a live inbound resolves this Application's deployment instead of the Default Network. Provide exactly one of `channelBindingId` (a per-participant channel binding) or `messagingEndpointId` (a per-agent provider endpoint — its Telegram bot, WhatsApp number, …). The doorway's agent must already be a member of this Network. Rejects (409) if the endpoint is already routed by a different source.
Disconnects a messaging channel from this Application.
The mirror of `connect`: deletes the channel's inbound doorway (the agent's messaging endpoint for endpoint-owned providers such as Telegram, or the inbound channel binding for every other provider) and the entry point that claims its address. The channel stops answering, on any Application including the Default Network, and its address is free to connect again. The integration config and its credential stay; delete those under Integrations. Rejects (400) a trigger or schedule entry point.