XMPP-based real-time messaging API using WebSocket transport (RFC 7395).
This API provides real-time chat functionality including:
Uses XMPP (Extensible Messaging and Presence Protocol) over WebSocket. Messages are XML stanzas following XMPP Core (RFC 6120) and relevant XEPs.
/xmppauth_token cookie during upgradeLocal development server
Staging server (TLS required)
Production server (TLS required)
XMPP over WebSocket endpoint following RFC 7395.
Authentication: JWT token must be present in auth_token cookie.
Connection uses XMPP framing (urn:ietf:params:xml:ns:xmpp-framing).
JID Format: {username}@{domain}/{resource}
alice@localhost/web-abc123Send direct message to user
Send a 1:1 chat message to another user. The message is routed through the XMPP server to the recipient's connected clients.
Available only on servers:
Accepts the following message:
1:1 chat message between users
XMPP message stanza for direct chat
XMPP over WebSocket endpoint following RFC 7395.
Authentication: JWT token must be present in auth_token cookie.
Connection uses XMPP framing (urn:ietf:params:xml:ns:xmpp-framing).
JID Format: {username}@{domain}/{resource}
alice@localhost/web-abc123Receive direct message from user
Receive a 1:1 chat message from another user.
Available only on servers:
Accepts the following message:
1:1 chat message between users
XMPP message stanza for direct chat
XMPP over WebSocket endpoint following RFC 7395.
Authentication: JWT token must be present in auth_token cookie.
Connection uses XMPP framing (urn:ietf:params:xml:ns:xmpp-framing).
JID Format: {username}@{domain}/{resource}
alice@localhost/web-abc123Send message to group
Send a message to a MUC room. The message is broadcast to all room participants by the server.
JID Format: group-{uuid}@{domain}
Available only on servers:
Accepts the following message:
Message to a MUC room
XMPP message stanza for group chat (MUC)
XMPP over WebSocket endpoint following RFC 7395.
Authentication: JWT token must be present in auth_token cookie.
Connection uses XMPP framing (urn:ietf:params:xml:ns:xmpp-framing).
JID Format: {username}@{domain}/{resource}
alice@localhost/web-abc123Receive message from group
Receive a group chat message. The from JID includes the
sender's nickname in the resource part.
From Format: group-{uuid}@{domain}/{senderUsername}
Available only on servers:
Accepts the following message:
Message to a MUC room
XMPP message stanza for group chat (MUC)
XMPP over WebSocket endpoint following RFC 7395.
Authentication: JWT token must be present in auth_token cookie.
Connection uses XMPP framing (urn:ietf:params:xml:ns:xmpp-framing).
JID Format: {username}@{domain}/{resource}
alice@localhost/web-abc123Send presence update
Broadcast presence status to contacts and joined rooms. Initial presence must be sent after authentication to appear online.
Available only on servers:
Accepts the following message:
User availability status
XMPP presence stanza
away Be right back
XMPP over WebSocket endpoint following RFC 7395.
Authentication: JWT token must be present in auth_token cookie.
Connection uses XMPP framing (urn:ietf:params:xml:ns:xmpp-framing).
JID Format: {username}@{domain}/{resource}
alice@localhost/web-abc123Receive presence update
Receive presence updates from contacts and room participants.
Available only on servers:
Accepts the following message:
User availability status
XMPP presence stanza
away Be right back
XMPP over WebSocket endpoint following RFC 7395.
Authentication: JWT token must be present in auth_token cookie.
Connection uses XMPP framing (urn:ietf:params:xml:ns:xmpp-framing).
JID Format: {username}@{domain}/{resource}
alice@localhost/web-abc123Send message with delivery receipt request
Send a message with XEP-0184 receipt request. The recipient should respond with a delivery receipt when the message is received.
Available only on servers:
Accepts the following message:
Message requesting delivery confirmation (XEP-0184)
Message with XEP-0184 receipt request
XMPP over WebSocket endpoint following RFC 7395.
Authentication: JWT token must be present in auth_token cookie.
Connection uses XMPP framing (urn:ietf:params:xml:ns:xmpp-framing).
JID Format: {username}@{domain}/{resource}
alice@localhost/web-abc123Receive delivery receipt
Receive confirmation that a sent message was delivered. The receipt contains the original message ID.
Available only on servers:
Accepts the following message:
Confirmation of message delivery (XEP-0184)
XEP-0184 delivery receipt acknowledgment
1:1 chat message between users
XMPP message stanza for direct chat
Message to a MUC room
XMPP message stanza for group chat (MUC)
User availability status
XMPP presence stanza
Message requesting delivery confirmation (XEP-0184)
Message with XEP-0184 receipt request
Confirmation of message delivery (XEP-0184)
XEP-0184 delivery receipt acknowledgment
XMPP message stanza for direct chat
XMPP message stanza for group chat (MUC)
XMPP presence stanza
Message with XEP-0184 receipt request
XEP-0184 delivery receipt acknowledgment
Jabber ID (JID) following RFC 7622.
Formats:
localpart@domain (e.g., alice@localhost)localpart@domain/resource (e.g., alice@localhost/web-123)domain (e.g., conference.localhost)XMPP error stanza