Skip to content
V2 (Legacy) API ReferenceGet started

Add a participant to a chat

client.Chats.Participants.Add(ctx, chatID, body) (*ChatParticipantAddResponse, error)
POST/v3/chats/{chatId}/participants

Add a new participant to an existing group chat.

Requirements:

  • Group chats only (3+ existing participants)
  • New participant must support the same messaging service as the group
  • Cross-service additions not allowed (e.g., can’t add RCS-only user to iMessage group)
  • For cross-service scenarios, create a new chat instead
ParametersExpand Collapse
chatID string
formatuuid
body ChatParticipantAddParams
Handle param.Field[string]

Phone number (E.164 format) or email address of the participant to add

ReturnsExpand Collapse
type ChatParticipantAddResponse struct{…}
Message stringOptional
Status stringOptional
TraceID stringOptional

Add a participant to a chat

package main

import (
  "context"
  "fmt"

  "github.com/linq-team/linq-go"
  "github.com/linq-team/linq-go/option"
)

func main() {
  client := linqgo.NewClient(
    option.WithAPIKey("My API Key"),
  )
  response, err := client.Chats.Participants.Add(
    context.TODO(),
    "550e8400-e29b-41d4-a716-446655440000",
    linqgo.ChatParticipantAddParams{
      Handle: "+12052499136",
    },
  )
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", response.TraceID)
}
{
  "message": "Participant addition queued",
  "status": "accepted",
  "trace_id": "trace_id"
}
{
  "error": {
    "status": 400,
    "code": 1002,
    "message": "Phone number must be in E.164 format"
  },
  "success": false
}
{
  "error": {
    "status": 401,
    "code": 2004,
    "message": "Unauthorized - missing or invalid authentication token"
  },
  "success": false
}
{
  "error": {
    "status": 404,
    "code": 2001,
    "message": "Resource not found"
  },
  "success": false
}
{
  "error": {
    "status": 500,
    "code": 3006,
    "message": "Internal server error"
  },
  "success": false
}
Returns Examples
{
  "message": "Participant addition queued",
  "status": "accepted",
  "trace_id": "trace_id"
}
{
  "error": {
    "status": 400,
    "code": 1002,
    "message": "Phone number must be in E.164 format"
  },
  "success": false
}
{
  "error": {
    "status": 401,
    "code": 2004,
    "message": "Unauthorized - missing or invalid authentication token"
  },
  "success": false
}
{
  "error": {
    "status": 404,
    "code": 2001,
    "message": "Resource not found"
  },
  "success": false
}
{
  "error": {
    "status": 500,
    "code": 3006,
    "message": "Internal server error"
  },
  "success": false
}