docs(xchat): update Chat XDK pages to the v0.4.0 API#268
Conversation
The SDK now generates message ids (returned on the send payload), takes the sender identity once via set_identity, and offers two optional session stores: set_signing_keys for verification keys and set_cache_keys for signature-verified conversation keys. Replies and reactions target the raw event being replied or reacted to, and decrypted replies carry a reply_preview_validation outcome. Every code snippet across all six language tabs is rewritten against the released binding surfaces; the send-body mapping now sources message_id from the payload; version stamps move to 0.3.0. Explicit per-call arguments remain documented once as the alternative for serverless and multi-instance deployments.
|
Preview deployment for your docs. Learn more about Mintlify Previews.
|
Present set_signing_keys and set_cache_keys as an optional convenience for long-lived single-identity processes rather than a required step, state plainly that signing keys are the other participants' public keys fetched from the public-keys endpoint, and keep the per-call style visible as the equal alternative. Drop the set_key_version mention: the registered key version is set through set_identity or the version-aware key import.
|
Pushed a follow-up commit: the session stores (set_signing_keys / set_cache_keys) are now framed as an optional convenience rather than a required step, with an explicit pointer that signing keys are the participants' public keys from the public-keys endpoint. Also removed the set_key_version mention — the method is being removed from the SDK before v0.3.0 ships (chat-xdk PR in flight); the version is set via set_identity or the version-aware import. |
…guments Comments like "omitted arguments resolve from the key cache and store" defined a call by the parameters it does not take. Say what happens instead: the backlog is batch-decrypted with senders verified against the stored keys, the live event decrypts under the cached conversation key, and the send is signed as the session identity.
A reply to an edited message quotes the current (edited) text: the sender passes the raw edit event as reply_to_edit_event and the preview derives its text and entities from the edit, and the receiver verifies the edit like the original and validates the quote against the edited contents.
The release published as 0.4.0, not 0.3.0 (no v0.3.0 tag or registry artifacts exist), so the Rust git-tag and Maven version snippets now point at v0.4.0.
|
Docs PR opened: #270 Added a July 20, 2026 changelog entry announcing Chat XDK v0.4.0 and summarizing its user-facing API changes. |
|
Docs PR opened: #271 Translated the seven updated X Chat XDK v0.4.0 pages into Japanese, Spanish, Portuguese, and Korean. |
|
Docs PR opened: #272 Synced the Spanish, Japanese, and Portuguese X Chat pages to match the English Chat XDK v0.4.0 API rewrite. |
Updates every X Chat page to the Chat XDK v0.3.0 API, released in chat-xdk#119. All code snippets across the six language tabs were rewritten and verified against the released binding surfaces (
docs/API.md,.pyi,index.d.ts, Go/C#/Java types) and the working example bots.What the SDK changed (summary)
message_idon the payload; callers no longer mint UUIDs. The send-body mapping now sourcesmessage_idfrom the payload.set_identity(user_id, signing_key_version)is set once;sender_id/signing_key_versiondisappear from per-call argument lists.import_keystakes the registered key version.set_signing_keys(verification keys for decrypt calls) andset_cache_keys(true)(signature-verified conversation-key cache), enablingdecrypt_events(events),decrypt_event(b64), andencrypt_message(conversation_id, text)short forms. Explicit per-call arguments remain documented once as the fit for serverless/multi-instance deployments.encrypt_reply(conversation_id, text, reply_to_event)andencrypt_add_reaction(target_event, emoji); decrypted replies carry areply_preview_validationoutcome.Pages
getting-started.mdxset_identity, prepare without identity args, no id minting, store-based receive step)xchat-xdk.mdxmedia.mdxgroups.mdxreal-time-events.mdxevent_uuid(delivery) from the signedmessage_id(message)troubleshooting.mdxInvalidreply previewscryptography-primer.mdxNot included: the
es/,ja/, andpt/mirrors of these pages (assumed to follow the English source through localization).