FruxonDocs
Agent NetworkGraph

Connects a NEW channel to this Application in one step — mints the doorway and claims its address.

The app-owned-channels creation path — a channel is born inside an Application, never in an unbound state. 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 materializes its messaging entry point here. The agent must already be a member of this Application. Rejects (409) an address already in use by another Application — re-home a claimed address with `:move` instead. Returns the one-time webhook URL when a new channel binding was minted.

POST
/v1/tenants/{tenant}/networks/{network}/entryPoints/connect
AuthorizationBearer <token>

JWT Authorization header using the Bearer scheme. Enter 'Bearer' [space] and then your token.

In: header

Path Parameters

network*string

The target Network id.

Formatuuid
tenant*string

The tenant identifier

The integration config, channel address parameters, and target member agent.

integrationConfigId?string

The tenant integration config carrying the channel (the connection's credentials).

Formatuuid
agentId?string|null

The member agent the channel routes to. It must already be a member of this Network.

name?string|null

Operator-facing channel name; defaults to the config's display name.

parameters?|null

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).

replaceExistingEndpoint?boolean

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.

[key: string]?never

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",
    "agentMembershipId": "00000000-0000-0000-0000-000000000000",
    "routingPolicyKey": "string",
    "sourceKind": "CHANNEL_BINDING",
    "sourceId": "00000000-0000-0000-0000-000000000000",
    "operationalStatus": "ACTIVE",
    "createdAt": 0,
    "modifiedAt": 0
  },
  "webhookUrl": "string",
  "replacedMessagingEndpointId": "00000000-0000-0000-0000-000000000000"
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}
Empty
Empty
{
  "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
}