FruxonDocs
ApiParticipants

Pulls the participant's avatar from a messaging-provider channel and stores it on the participant

Routes the call through the provider-specific `IParticipantAvatarSource` registered for the channel's integration id (Slack today; other providers as they're added), downloads the image into platform storage, and writes the resulting file id into `Participant.AvatarFileId`. Returns the updated participant. Surfaces 400 when the named channel isn't on the participant, when the provider has no avatar source registered, when the operator hasn't connected OAuth for that workspace, or when the provider returns no image for the address (channels/groups, default-avatar users).

POST
/v1/tenants/{tenant}/participants/{participant}/avatar:syncFromChannel
AuthorizationBearer <token>

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

In: header

Path Parameters

participant*string

The participant identifier.

Formatuuid
tenant*string

The tenant identifier

Which channel (config id + address) to pull from.

integrationConfigId*string
Formatuuid
address*string
Length1 <= length
[key: string]?never

Response Body

curl -X POST "https://api.fruxon.com/v1/tenants/string/participants/497f6eca-6276-4993-bfeb-53cbbbba6f08/avatar:syncFromChannel" \  -H "Content-Type: application/json" \  -d '{    "integrationConfigId": "928c9032-93b2-49a3-82db-be1a31402d0e",    "address": "string"  }'
{
  "id": "00000000-0000-0000-0000-000000000000",
  "kind": "PERSON",
  "displayName": "string",
  "email": "string",
  "relatedAgentId": "string",
  "channels": [
    {
      "integrationConfigId": "00000000-0000-0000-0000-000000000000",
      "address": "string",
      "priority": 0,
      "label": "string",
      "disabled": false
    }
  ],
  "agentIds": [
    "string"
  ],
  "disabledAt": 0,
  "health": {
    "reachable": false,
    "channels": [
      {
        "address": "string",
        "reason": null,
        "keyStatus": "UNSPECIFIED",
        "keyPrefix": "string",
        "lastMessageAt": null
      }
    ],
    "reason": "INVALID_FORMAT"
  },
  "channelActivations": [
    {
      "agentId": "string",
      "bindingId": "00000000-0000-0000-0000-000000000000",
      "integrationConfigId": "00000000-0000-0000-0000-000000000000",
      "provider": "string",
      "address": "string",
      "webhookUrl": "string",
      "webhookUrlTemplate": "string",
      "webhookKeyPrefix": "string",
      "scope": "PER_BINDING"
    }
  ],
  "avatarFileId": "string",
  "createdAt": 0,
  "modifiedAt": 0
}
{
  "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
}