Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions apps/docs-website/astro.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,10 @@ export default defineConfig({
label: "chatto.discovery.v1",
items: ["reference/connectrpc-api/server-discovery"],
},
{
label: "chatto.clientsync.api.v1",
items: ["reference/connectrpc-api/client-sync"],
},
{
label: "chatto.api.v1",
items: [
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Self-service account, profile, avatar, presence, status, external i
editUrl: false
---

{/* Generated from proto/chatto/{auth,discovery,api,admin,realtime}/v1/*.proto. Do not edit directly. */}
{/* Generated from Chatto public protobuf packages. Do not edit directly. */}

Chatto exposes this service below `/api/connect`.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: System diagnostics RPCs.
editUrl: false
---

{/* Generated from proto/chatto/{auth,discovery,api,admin,realtime}/v1/*.proto. Do not edit directly. */}
{/* Generated from Chatto public protobuf packages. Do not edit directly. */}

Chatto exposes this service below `/api/connect`.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Audit event log read RPCs.
editUrl: false
---

{/* Generated from proto/chatto/{auth,discovery,api,admin,realtime}/v1/*.proto. Do not edit directly. */}
{/* Generated from Chatto public protobuf packages. Do not edit directly. */}

Chatto exposes this service below `/api/connect`.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Permission matrix, explanation, and override administration RPCs.
editUrl: false
---

{/* Generated from proto/chatto/{auth,discovery,api,admin,realtime}/v1/*.proto. Do not edit directly. */}
{/* Generated from Chatto public protobuf packages. Do not edit directly. */}

Chatto exposes this service below `/api/connect`.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Role catalog and role definition administration RPCs.
editUrl: false
---

{/* Generated from proto/chatto/{auth,discovery,api,admin,realtime}/v1/*.proto. Do not edit directly. */}
{/* Generated from Chatto public protobuf packages. Do not edit directly. */}

Chatto exposes this service below `/api/connect`.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Room group, sidebar layout, and sidebar link administration RPCs.
editUrl: false
---

{/* Generated from proto/chatto/{auth,discovery,api,admin,realtime}/v1/*.proto. Do not edit directly. */}
{/* Generated from Chatto public protobuf packages. Do not edit directly. */}

Chatto exposes this service below `/api/connect`.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Server profile, branding, and security administration RPCs.
editUrl: false
---

{/* Generated from proto/chatto/{auth,discovery,api,admin,realtime}/v1/*.proto. Do not edit directly. */}
{/* Generated from Chatto public protobuf packages. Do not edit directly. */}

Chatto exposes this service below `/api/connect`.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: User identity, member detail, role assignment, and username-cooldow
editUrl: false
---

{/* Generated from proto/chatto/{auth,discovery,api,admin,realtime}/v1/*.proto. Do not edit directly. */}
{/* Generated from Chatto public protobuf packages. Do not edit directly. */}

Chatto exposes this service below `/api/connect`.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Chunked room-scoped attachment upload RPCs.
editUrl: false
---

{/* Generated from proto/chatto/{auth,discovery,api,admin,realtime}/v1/*.proto. Do not edit directly. */}
{/* Generated from Chatto public protobuf packages. Do not edit directly. */}

Chatto exposes this service below `/api/connect`.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Room-scoped asset metadata and signed URL read RPCs.
editUrl: false
---

{/* Generated from proto/chatto/{auth,discovery,api,admin,realtime}/v1/*.proto. Do not edit directly. */}
{/* Generated from Chatto public protobuf packages. Do not edit directly. */}

Chatto exposes this service below `/api/connect`.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Voice and video call state and token RPCs.
editUrl: false
---

{/* Generated from proto/chatto/{auth,discovery,api,admin,realtime}/v1/*.proto. Do not edit directly. */}
{/* Generated from Chatto public protobuf packages. Do not edit directly. */}

Chatto exposes this service below `/api/connect`.

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,236 @@
---
title: ClientSyncService
description: Authenticated portable preferences and known-server directory RPCs.
editUrl: false
---

{/* Generated from Chatto public protobuf packages. Do not edit directly. */}

Chatto exposes this service below `/api/connect`.



Shared message and enum definitions are documented in [Shared Types And Enums](/reference/connectrpc-api/types/).



<a id="chatto-clientsync-api-v1-ClientSyncService"></a>

## ClientSyncService

ClientSyncService stores the authenticated user's portable preferences and
server directory on their chosen home server.

<a id="chatto-clientsync-api-v1-ClientSyncService-GetPreferences"></a>

### GetPreferences

Gets portable preferences for the authenticated user.

```http
POST /api/connect/chatto.clientsync.api.v1.ClientSyncService/GetPreferences
```

<a id="chatto-clientsync-api-v1-GetPreferencesRequest"></a>

#### Input: GetPreferencesRequest

GetPreferencesRequest selects the authenticated user's preferences.


<a id="chatto-clientsync-api-v1-GetPreferencesResponse"></a>

#### Result: GetPreferencesResponse

GetPreferencesResponse returns the authenticated user's portable preferences.

| Field | Type | Description |
| --- | --- | --- |
| `preferences` | [`Preferences`](/reference/connectrpc-api/types/#chatto-clientsync-api-v1-Preferences) | Current preferences; present even when no fields have been set. |


<a id="chatto-clientsync-api-v1-ClientSyncService-UpdatePreferences"></a>

### UpdatePreferences

Updates selected portable preferences for the authenticated user.

```http
POST /api/connect/chatto.clientsync.api.v1.ClientSyncService/UpdatePreferences
```

<a id="chatto-clientsync-api-v1-UpdatePreferencesRequest"></a>

#### Input: UpdatePreferencesRequest

UpdatePreferencesRequest applies selected portable preference fields.

| Field | Type | Description |
| --- | --- | --- |
| `preferences` | [`Preferences`](/reference/connectrpc-api/types/#chatto-clientsync-api-v1-Preferences) | Replacement values for fields selected by update_mask. |
| `update_mask` | `google.protobuf.FieldMask` | Fields to replace. Supported paths are locale, timezone, and time_format. |


<a id="chatto-clientsync-api-v1-UpdatePreferencesResponse"></a>

#### Result: UpdatePreferencesResponse

UpdatePreferencesResponse returns the preferences after the update.

| Field | Type | Description |
| --- | --- | --- |
| `preferences` | [`Preferences`](/reference/connectrpc-api/types/#chatto-clientsync-api-v1-Preferences) | Updated portable preferences. |


<a id="chatto-clientsync-api-v1-ClientSyncService-ListKnownServers"></a>

### ListKnownServers

Lists the authenticated user's portable known-server directory.

```http
POST /api/connect/chatto.clientsync.api.v1.ClientSyncService/ListKnownServers
```

<a id="chatto-clientsync-api-v1-ListKnownServersRequest"></a>

#### Input: ListKnownServersRequest

ListKnownServersRequest selects the authenticated user's server directory.


<a id="chatto-clientsync-api-v1-ListKnownServersResponse"></a>

#### Result: ListKnownServersResponse

ListKnownServersResponse returns the portable server directory and home marker.

| Field | Type | Description |
| --- | --- | --- |
| `servers` | repeated [`KnownServer`](/reference/connectrpc-api/types/#chatto-clientsync-api-v1-KnownServer) | Servers known to the user, without authentication credentials. |
| `home_server_id` | `optional string` | ID of the server designated as home, when one has been chosen. |


<a id="chatto-clientsync-api-v1-ClientSyncService-CreateKnownServer"></a>

### CreateKnownServer

Adds a server to the authenticated user's portable directory.

```http
POST /api/connect/chatto.clientsync.api.v1.ClientSyncService/CreateKnownServer
```

<a id="chatto-clientsync-api-v1-CreateKnownServerRequest"></a>

#### Input: CreateKnownServerRequest

CreateKnownServerRequest adds one server to the portable directory.

| Field | Type | Description |
| --- | --- | --- |
| `server` | [`KnownServer`](/reference/connectrpc-api/types/#chatto-clientsync-api-v1-KnownServer) | Server metadata to add. added_at is assigned by the server. |


<a id="chatto-clientsync-api-v1-CreateKnownServerResponse"></a>

#### Result: CreateKnownServerResponse

CreateKnownServerResponse returns the created directory entry.

| Field | Type | Description |
| --- | --- | --- |
| `server` | [`KnownServer`](/reference/connectrpc-api/types/#chatto-clientsync-api-v1-KnownServer) | Created server entry with its server-assigned added_at value. |


<a id="chatto-clientsync-api-v1-ClientSyncService-UpdateKnownServer"></a>

### UpdateKnownServer

Updates discovery metadata for one known server.

```http
POST /api/connect/chatto.clientsync.api.v1.ClientSyncService/UpdateKnownServer
```

<a id="chatto-clientsync-api-v1-UpdateKnownServerRequest"></a>

#### Input: UpdateKnownServerRequest

UpdateKnownServerRequest updates discovery metadata for one known server.

| Field | Type | Description |
| --- | --- | --- |
| `server` | [`KnownServer`](/reference/connectrpc-api/types/#chatto-clientsync-api-v1-KnownServer) | Server ID and replacement values for fields selected by update_mask. |
| `update_mask` | `google.protobuf.FieldMask` | Fields to replace. Supported paths are url, name, and icon_url. |


<a id="chatto-clientsync-api-v1-UpdateKnownServerResponse"></a>

#### Result: UpdateKnownServerResponse

UpdateKnownServerResponse returns the directory entry after the update.

| Field | Type | Description |
| --- | --- | --- |
| `server` | [`KnownServer`](/reference/connectrpc-api/types/#chatto-clientsync-api-v1-KnownServer) | Updated known-server entry. |


<a id="chatto-clientsync-api-v1-ClientSyncService-DeleteKnownServer"></a>

### DeleteKnownServer

Removes a non-home server from the portable directory.

```http
POST /api/connect/chatto.clientsync.api.v1.ClientSyncService/DeleteKnownServer
```

<a id="chatto-clientsync-api-v1-DeleteKnownServerRequest"></a>

#### Input: DeleteKnownServerRequest

DeleteKnownServerRequest removes a non-home server from the directory.

| Field | Type | Description |
| --- | --- | --- |
| `id` | `string` | ID of the server to remove. |


<a id="chatto-clientsync-api-v1-DeleteKnownServerResponse"></a>

#### Result: DeleteKnownServerResponse

DeleteKnownServerResponse acknowledges an idempotent directory removal.


<a id="chatto-clientsync-api-v1-ClientSyncService-SetHomeServer"></a>

### SetHomeServer

Designates an existing known server as the user's home server.

```http
POST /api/connect/chatto.clientsync.api.v1.ClientSyncService/SetHomeServer
```

<a id="chatto-clientsync-api-v1-SetHomeServerRequest"></a>

#### Input: SetHomeServerRequest

SetHomeServerRequest chooses an existing directory entry as home.

| Field | Type | Description |
| --- | --- | --- |
| `id` | `string` | ID of the known server to designate as home. |


<a id="chatto-clientsync-api-v1-SetHomeServerResponse"></a>

#### Result: SetHomeServerResponse

SetHomeServerResponse returns the newly designated home server.

| Field | Type | Description |
| --- | --- | --- |
| `server` | [`KnownServer`](/reference/connectrpc-api/types/#chatto-clientsync-api-v1-KnownServer) | Known-server entry now designated as home. |
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Public external-identity confirmation and capability-token auth-flo
editUrl: false
---

{/* Generated from proto/chatto/{auth,discovery,api,admin,realtime}/v1/*.proto. Do not edit directly. */}
{/* Generated from Chatto public protobuf packages. Do not edit directly. */}

Chatto exposes this service below `/api/connect`.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Overview of Chatto's public protobuf API.
editUrl: false
---

{/* Generated from proto/chatto/{auth,discovery,api,admin,realtime}/v1/*.proto. Do not edit directly. */}
{/* Generated from Chatto public protobuf packages. Do not edit directly. */}

Chatto exposes a protobuf-first integration API over ConnectRPC at `/api/connect`. Use it for bots, integrations, admin tooling, and alternate clients that need the same public contract as the bundled web app.

Expand Down Expand Up @@ -194,7 +194,7 @@ Generated clients expose those codes through their Connect client error helpers.

## Versioning And Stability

Package names such as `chatto.auth.v1`, `chatto.discovery.v1`, `chatto.api.v1`, and `chatto.admin.v1` identify the current protobuf wire namespaces that clients integrate with.
Package names such as `chatto.auth.v1`, `chatto.discovery.v1`, `chatto.api.v1`, `chatto.clientsync.api.v1`, and `chatto.admin.v1` identify the current protobuf wire namespaces that clients integrate with.

Chatto is still pre-1.0, so any release may change the public API in ways that require client changes. The `v1` suffix is part of the current wire name, not a compatibility guarantee. Pin an exact server version, test integrations against the exact upgrade candidate, and read [API Compatibility](/guides/integrations/api-compatibility/) before upgrading.

Expand All @@ -216,6 +216,10 @@ Use the service pages below for request and response fields. Shared messages and

- [ServerDiscoveryService](/reference/connectrpc-api/server-discovery/) - Unauthenticated server metadata, branding, and login discovery RPCs.

### chatto.clientsync.api.v1

- [ClientSyncService](/reference/connectrpc-api/client-sync/) - Authenticated portable preferences and known-server directory RPCs.

### chatto.api.v1

- [AssetService](/reference/connectrpc-api/assets/) - Room-scoped asset metadata and signed URL read RPCs.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Message creation, editing, deletion, composer link-preview, reactio
editUrl: false
---

{/* Generated from proto/chatto/{auth,discovery,api,admin,realtime}/v1/*.proto. Do not edit directly. */}
{/* Generated from Chatto public protobuf packages. Do not edit directly. */}

Chatto exposes this service below `/api/connect`.

Expand Down
Loading
Loading