Skip to main content
POST
/
api
/
newsletter
/
join
/
:instance
Join newsletter
curl --request POST \
  --url https://api.example.com/api/newsletter/join/:instance \
  --header 'Content-Type: <content-type>' \
  --header 'token: <token>' \
  --data '
{
  "identifier": "<string>"
}
'

Documentation Index

Fetch the complete documentation index at: https://docs.ryzeapi.cloud/llms.txt

Use this file to discover all available pages before exploring further.

Auth: TokenAccount or TokenInstanceRate-limit: Global (100/min) • Idempotent: partial (an already-followed newsletter is usually a silent no-op)

Description

Subscribes (follows) the account to a newsletter. After join, the newsletter shows up on GET /list and incoming messages arrive as message.exchange with chat.type = "newsletter".

Examples

By JID

Subscribes the account by passing the canonical newsletter JID (@newsletter). It’s the most direct format, no need to resolve a link or code first.
curl -X POST "https://ryzeapi.cloud/api/newsletter/join/$Instance_Name" \
  -H "token: $Token_Instance" \
  -H "Content-Type: application/json" \
  -d '{
    "identifier": "120363422585881117@newsletter"
  }'
Subscribes the account by passing the full invite link (https://whatsapp.com/channel/...). The server extracts the code from the URL suffix and resolves the JID before following.
curl -X POST "https://ryzeapi.cloud/api/newsletter/join/$Instance_Name" \
  -H "token: $Token_Instance" \
  -H "Content-Type: application/json" \
  -d '{
    "identifier": "https://whatsapp.com/channel/120363422585881117"
  }'

By code

Subscribes the account by passing only the invite code (link suffix, without the domain). A shortcut for when you’ve already extracted the code.
curl -X POST "https://ryzeapi.cloud/api/newsletter/join/$Instance_Name" \
  -H "token: $Token_Instance" \
  -H "Content-Type: application/json" \
  -d '{
    "identifier": "120363422585881117"
  }'

Success response

The response always returns the canonical newsletter JID in channelJid, even when the input was a link or invite code. Use that value as the identifier in subsequent calls (/info, /leave).
200 OK
{
  "success": true,
  "message": "Successfully joined newsletter",
  "channelJid": "120363422585881117@newsletter"
}

Path parameters

instance
string
required
Instance name.

Headers

token
string
required
TokenAccount or TokenInstance.
Content-Type
string
required
application/json

Request body

identifier
string
required
@newsletter JID, full link or invite code.

Notes

  • The response always returns the canonical JID in channelJid, useful when the input was a link / code.
  • After join, the propagation to GET /list can take a few seconds.
  • In rare cases, private newsletters require approval from the owner, join returns success but the newsletter only shows up in list after the approval.
  • Invite links can be revoked by the owner, old codes start failing with newsletter not found.

Errors

HTTPMessage
400The 'identifier' field is required (JID @newsletter or invite link/code)
400Invalid newsletter identifier (use JID @newsletter or invite link/code)
400newsletter not found
500failed to follow newsletter: <reason>
501WhatsApp client does not support FollowNewsletter
Envelope:
{
  "success": false,
  "error": { "message": "newsletter not found" }
}