CLI

The CLI is not published yet. In a repository checkout, install dependencies with pnpm install --frozen-lockfile, then run node packages/cli/src/bin.ts with Node 24 or newer. See CLI help.

Commands

Command What it does
srvo login --api-key Reads a key from stdin (or a hidden prompt on a terminal), checks it with GET /me and saves it. A key passed as an argument is refused.
srvo logout Forgets the current workspace’s key. The key stays valid until it is revoked in Settings.
srvo whoami GET /me.
srvo use <workspace> Switches the default saved workspace (name, slug or tenant id). --workspace does it for one call.
srvo actions Commands the current key may call: catalogue commands whose capability is in GET /me/capabilities. This is only a listing: it does not know a key’s read-only mode or action ticks, so it can list more than the key may run. The server still checks every call.
srvo help [command…] Usage, a command group or one command’s flags.
srvo <module> <…words> Runs an action. Words are the action id in kebab case: boards.records.list → srvo boards records list.

Flags come from the action’s input schema (Zod → JSON Schema → OpenAPI): tableId → --table-id. Strings, numbers, integers, booleans (--x, --no-x, --x=false) and enums are typed. Arrays of scalars repeat (--tag a --tag b). Objects and other complex values take JSON (--fields '{"title":"A"}'). For a whole input, use --input @file.json, --input - (stdin) or inline JSON; flags override its fields.

Global flags: --json (raw JSON on stdout), --all (follow nextCursor on paged commands; --cursor for one page), --yes (skip the confirmation for destructive actions), --input, --workspace, --api (or SRVO_API_URL, default https://api.srvo.app).

Writes send a fresh Idempotency-Key. Destructive actions call once for the server’s preview, show it and ask on a terminal; off a terminal they stop unless --yes is given. Then they commit with the returned Srvo-Confirmation token.

Exit codes: 0 ok, 1 error or declined, 2 usage or validation, 3 not signed in or forbidden, 4 not found, 5 conflict or stale preview, 6 rate limited.

Credentials

  • Profiles (server, workspace, member name; no secrets) live in ~/.config/srvo/config.json ($XDG_CONFIG_HOME and SRVO_CONFIG_DIR are honoured), mode 0600 in a 0700 directory.
  • Keys go to the macOS keychain (service srvo-cli), written through security -i so the key never appears in a process list. Elsewhere, or with SRVO_TOKEN_STORE=file, they go to credentials.json (0600) next to the config.
  • SRVO_API_KEY overrides the saved key (CI, agents).
  • A saved key is only sent to the server it was saved for.
  • The CLI never prints keys.

The OpenAPI document is cached per server for one hour in the config directory and refetched when a command is not found.

Global flags from the parser: --json, --all, --yes, --input, --api, --workspace, --help.

Exit codes from the CLI: 0 = ok; 1 = error; 2 = usage; 3 = auth; 4 = notFound; 5 = conflict; 6 = rateLimited.

ai

srvo ai credits get

Read workspace Sergio credits

Capability: ai.credits.read. Kind: read.

No input fields.

srvo ai credits update

Set Sergio credit mode and monthly spending cap

Capability: ai.credits.manage. Kind: write.

Field In Type Required
–mode body string yes
–spend-cap-euros body integer yes

srvo ai credits usage

Read your chat message credits and your UTC daily and monthly totals. Current streaming answer is not settled yet.

Capability: ai.credits.read. Kind: read.

Field In Type Required
–conversation-id query string yes

boards

srvo boards metrics present

Compute a widget query and return totals, up to 20 groups and a widget block. Pass widget and optional timeZone; no paging.

Capability: boards.records.read. Kind: read.

Field In Type Required
–widget body json yes
–time-zone body string no

srvo boards metrics query

Compute sums, averages, counts and percents over a table’s readable rows, optionally grouped by a select/status field or date bucket.

Capability: boards.records.read. Kind: read.

Field In Type Required
–table-id body string yes
–metrics body json yes
–date-field body string no
–range body json no
–time-zone body string no
–group-by body json no
–filters body json no

srvo boards metrics validate

Check a metric query against the table’s fields and the caller’s field access, without running it.

Capability: boards.records.read. Kind: read.

Field In Type Required
–table-id body string yes
–metrics body json yes
–date-field body string no
–range body json no
–time-zone body string no
–group-by body json no
–filters body json no

srvo boards records activity

Return permission-masked record history. Pass recordId and optional cursor/limit; follow nextCursor for more.

Capability: boards.records.read. Kind: read.

Field In Type Required
–record-id path string yes
–cursor query string no
–limit query integer no

srvo boards records create

Create a record in a table.

Capability: boards.records.create. Kind: write.

Field In Type Required
–table-id path string yes
–id body string no
–fields body json yes

srvo boards records export

Export tableId and optional viewId as masked CSV/XLSX. Returns filename, contentType and base64 body over MCP, up to 1 MiB; use REST for larger files. No paging.

Capability: boards.records.read. Kind: read.

Field In Type Required
–table-id path string yes
–view-id query string no
–format query string no
–locale query string no

srvo boards records get

Get one record by id.

Capability: boards.records.read. Kind: read.

Field In Type Required
–record-id path string yes

srvo boards records list

List the records of a table, ordered by id, one page at a time.

Capability: boards.records.read. Kind: read.

Field In Type Required
–table-id path string yes
–cursor query string no
–limit query integer no

srvo boards records move

Move a record between readable neighbours and/or patch its group fields in one versioned update.

Capability: boards.records.update. Kind: write.

Field In Type Required
–record-id path string yes
–base-version body integer yes
–after-id body string no
–before-id body string no
–fields body json no

srvo boards records purge

Permanently delete trashed records, or empty the trash (recordIds: “all”). Preview first, then commit.

Capability: boards.records.trash. Kind: destructive.

Field In Type Required
–record-ids body json yes
–space-ids body string (repeatable) no

srvo boards records restore

Restore a trashed record at its current version. No preview required.

Capability: boards.records.trash. Kind: write.

Field In Type Required
–record-id path string yes
–base-version body integer yes

srvo boards records titles

Resolve up to 500 recordIds to visible id/title pairs; unreadable records are omitted. No paging.

Capability: boards.records.read. Kind: read.

Field In Type Required
–record-ids body string (repeatable) yes

srvo boards records trash

Move a record to the trash (restorable for 30 days in the cloud). Preview first, then commit.

Capability: boards.records.trash. Kind: destructive.

Field In Type Required
–record-id path string yes

srvo boards records update

Update some fields of a record. Fields not sent stay as they are.

Capability: boards.records.update. Kind: write.

Field In Type Required
–record-id path string yes
–fields body json yes
–base-version body integer no

core

srvo core email-preferences get

Read my email notification setting (off, batched every 15 minutes, or daily).

Capability: core.self.read. Kind: read.

No input fields.

srvo core email-preferences set

Change my email notification setting.

Capability: core.self.read. Kind: write.

Field In Type Required
–notifications body string yes

srvo core grants create

Grant a member or team a capability at tenant, space or exact item scope.

Capability: core.grants.manage. Kind: write.

Field In Type Required
–id body string no
–subject body json yes
–scope body json yes
–capability body string yes
–effect body string no

srvo core grants list

List explicit capability grants in this tenant (owners and admins).

Capability: core.grants.manage. Kind: read.

No input fields.

srvo core grants revoke

Revoke an explicit grant and require sync clients to re-authorize.

Capability: core.grants.manage. Kind: write.

Field In Type Required
–grant-id path string yes
–base-version body integer yes

srvo core home tasks

My readable assigned tasks across tables, filtered and paged in SQL.

Capability: core.self.read. Kind: read.

Field In Type Required
–cursor query string no
–limit query integer no
–bucket query string no
–time-zone query string no

srvo core invites cancel

Cancel an open invite (its link stops working).

Capability: core.invites.manage. Kind: write.

Field In Type Required
–invite-id path string yes

srvo core invites create

Invite someone by email. The UI returns the link once; MCP never returns invite tokens. Emails it when a provider is set.

Capability: core.invites.manage. Kind: write.

Field In Type Required
–email body string yes
–role body string no
–team-ids body string (repeatable) no
–locale body string no
–ttl-days body integer no

srvo core invites list

List invites (pending and expired by default).

Capability: core.invites.manage. Kind: read.

Field In Type Required
–include-closed query boolean no
–cursor query string no
–limit query integer no

srvo core invites resend

Resend an open invite with a fresh link and expiry (the old link stops working).

Capability: core.invites.manage. Kind: write.

Field In Type Required
–invite-id path string yes
–ttl-days body integer no

Link an editable source to a readable target.

Capability: core.links.write. Kind: write.

Field In Type Required
–id body string no
–from body json yes
–to body json yes
–rel body string no
–rank body string no

List outgoing links and backlinks visible now.

Capability: core.links.read. Kind: read.

Field In Type Required
–entity body json yes
–cursor body string no
–limit body integer no

Remove a link, keeping both entities.

Capability: core.links.write. Kind: write.

Field In Type Required
–link-id path string yes
–base-version query integer yes

Set a link’s ordering rank.

Capability: core.links.write. Kind: write.

Field In Type Required
–link-id path string yes
–base-version body integer no
–rank body string yes

srvo core me capabilities

Read your effective tenant capabilities and per-space grants in this workspace.

Capability: core.self.read. Kind: read.

No input fields.

srvo core members list

List the workspace’s members (people and agents) with role, status, teams and last activity.

Capability: core.members.read. Kind: read.

Field In Type Required
–kind query string no
–status query string no
–include-removed query boolean no
–cursor query string no
–limit query integer no

srvo core members reactivate

Reactivate a suspended member.

Capability: core.members.manage. Kind: write.

Field In Type Required
–member-id path string yes

srvo core members remove

Remove a member (offboarding): hand their spaces, private items and views to another member, remove their agents and team memberships, end their access.

Capability: core.members.manage. Kind: destructive.

Field In Type Required
–member-id path string yes
–reassign-to body string no

srvo core members suspend

Suspend a member: their sessions, keys and agents stop working until reactivated.

Capability: core.members.manage. Kind: write.

Field In Type Required
–member-id path string yes

srvo core members update-role

Change a member’s role (role ceiling applies; only owners make owners; one owner always stays).

Capability: core.members.manage. Kind: write.

Field In Type Required
–member-id path string yes
–role body json yes

srvo core modules set

Enable or hide a workspace module without deleting its data.

Capability: core.modules.manage. Kind: write.

Field In Type Required
–module body string yes
–enabled body boolean yes

srvo core notifications archive

Update my currently readable notifications: archive.

Capability: core.self.read. Kind: write.

Field In Type Required
–ids body string (repeatable) yes
–archived body boolean no

srvo core notifications create

Send a custom inbox notification to up to ten workspace members.

Capability: core.notifications.create. Kind: write.

Field In Type Required
–member-ids body string (repeatable) yes
–target body json yes
–message body string yes

srvo core notifications list

My persisted notifications, rechecked against current target visibility.

Capability: core.self.read. Kind: read.

Field In Type Required
–cursor query string no
–limit query integer no
–state query string no
–unread-only query boolean no

srvo core notifications mark-all-read

Update my currently readable notifications: markAllRead.

Capability: core.self.read. Kind: write.

No input fields.

srvo core notifications mark-read

Update my currently readable notifications: markRead.

Capability: core.self.read. Kind: write.

Field In Type Required
–ids body string (repeatable) yes
–read body boolean no

srvo core notifications snooze

Update my currently readable notifications: snooze.

Capability: core.self.read. Kind: write.

Field In Type Required
–ids body string (repeatable) yes
–until body string yes

srvo core notifications unread-count

Count currently readable, active, unsnoozed unread notifications.

Capability: core.self.read. Kind: read.

No input fields.

srvo core recents list

Visible personal recents for records, tables, views and notes, bounded to 50.

Capability: core.self.read. Kind: read.

Field In Type Required
–limit query integer no

srvo core recents touch

Remember a readable personal navigation target.

Capability: core.self.read. Kind: write.

Field In Type Required
–kind body string yes
–id body string yes

srvo core roles create

Create a custom role with capability patterns and row/field restrictions.

Capability: core.roles.manage. Kind: write.

Field In Type Required
–name body string yes
–capabilities body string (repeatable) yes
–record-rules body json no
–field-rules body json no
–id body string no

srvo core roles delete

Preview and delete a custom role, reassigning every member when in use.

Capability: core.roles.manage. Kind: destructive.

Field In Type Required
–role-id path string yes
–reassign-to body json no

srvo core roles list

List the roles: built-in roles with their capabilities, member counts and whether you may assign them.

Capability: core.roles.read. Kind: read.

No input fields.

srvo core roles update

Update a custom role. Built-in roles are immutable.

Capability: core.roles.manage. Kind: write.

Field In Type Required
–role-id path string yes
–name body string yes
–capabilities body string (repeatable) yes
–record-rules body json no
–field-rules body json no
–base-version body integer yes

srvo core scripts get

Read a SRVO Script run you started: status, output or error, CPU and SDK calls.

Capability: core.scripts.read. Kind: read.

Field In Type Required
–run-id path string yes

srvo core scripts run

Start a read-only SRVO Script run as you. Poll core.scripts.get for the result.

Capability: core.scripts.run. Kind: read.

Field In Type Required
–source body string yes
–args body json no

srvo core search query

Search readable records, structure, note titles, member names and own Track entries. Empty queries return no recents.

Capability: core.self.read. Kind: read.

Field In Type Required
–q body string yes
–types body json no
–limit body integer no
–cursor body string no

srvo core self whoami

Who am I: workspace, member, role, kind, and for agents the person they act for.

Capability: core.self.read. Kind: read.

No input fields.

srvo core taxonomies archive

Archive or unarchive a Project, Client or Tag. Archived entries keep their links and history but cannot be newly used. Needs Manage.

Capability: core.taxonomies.write. Kind: write.

Field In Type Required
–kind path string yes
–id path string yes
–base-version body integer yes
–archived body boolean yes

srvo core taxonomies capabilities

What you can do now: create this kind, your rights on one entry, and whether you can edit a source. Advisory; writes recheck.

Capability: core.taxonomies.read. Kind: read.

Field In Type Required
–kind path string yes
–id body string no
–source body json no

srvo core taxonomies create

Create a Project, Client or Tag. You become its manager; default visibility is members-only (Projects/Clients) or workspace (Tags).

Capability: core.taxonomies.write. Kind: write.

Field In Type Required
–kind path string yes
–id body string no
–name body string yes
–color body string no
–fields body json no
–visibility body string no
–team-ids body string (repeatable) no

srvo core taxonomies delete

Move an unreferenced Project, Client or Tag to the trash. Preview lists references; referenced entries must be archived instead. Needs Manage and Delete.

Capability: core.taxonomies.write. Kind: destructive.

Field In Type Required
–kind path string yes
–id path string yes
–base-version body integer yes

srvo core taxonomies get

Read one Project, Client or Tag with creator/editor details and your current rights.

Capability: core.taxonomies.read. Kind: read.

Field In Type Required
–kind path string yes
–id path string yes

srvo core taxonomies history list

Paged history of one Project, Client or Tag under your current View and field masks. Access details need Manage.

Capability: core.taxonomies.read. Kind: read.

Field In Type Required
–kind path string yes
–id path string yes
–cursor body string no
–limit body integer no
–event-types body string (repeatable) no

srvo core taxonomies list

List Projects, Clients or Tags you can view. Filters (Made by me, origin, archive, search) apply after access, before paging.

Capability: core.taxonomies.read. Kind: read.

Field In Type Required
–kind path string yes
–query query string no
–made-by-me query boolean no
–origin query string no
–archived query string no
–cursor query string no
–limit query integer no

srvo core taxonomies picker

Choices for a Project, Client or Tag picker. Viewable entries without Use are returned disabled with a reason.

Capability: core.taxonomies.read. Kind: read.

Field In Type Required
–kind path string yes
–query body string no
–made-by-me body boolean no
–origin body string no
–archived body string no
–cursor body string no
–limit body integer no
–source body json no

srvo core taxonomies update

Rename a Project, Client or Tag, change a Tag colour, or edit permitted fields. Needs Manage.

Capability: core.taxonomies.write. Kind: write.

Field In Type Required
–kind path string yes
–id path string yes
–base-version body integer yes
–patch body json yes

srvo core teams create

Create a team (open or closed), optionally with its first members.

Capability: core.teams.manage. Kind: write.

Field In Type Required
–id body string no
–name body string yes
–visibility body string no
–member-ids body string (repeatable) no

srvo core teams delete

Delete a team that has no spaces left; its memberships go with it.

Capability: core.teams.manage. Kind: destructive.

Field In Type Required
–team-id path string yes

srvo core teams list

List teams: open ones, the closed ones you’re in (team managers see all).

Capability: core.teams.read. Kind: read.

No input fields.

srvo core teams members add

Add a member to a team. Without team management rights you can only join an open team yourself.

Capability: core.teams.join. Kind: write.

Field In Type Required
–team-id path string yes
–member-id body string yes

srvo core teams members remove

Remove a member from a team. Without team management rights you can only leave a team yourself.

Capability: core.teams.join. Kind: write.

Field In Type Required
–team-id path string yes
–member-id path string yes

srvo core teams update

Rename a team or switch it between open and closed.

Capability: core.teams.manage. Kind: write.

Field In Type Required
–team-id path string yes
–name body string no
–visibility body string no

srvo core trash list

Return readable trashed records under live parents. Pass optional cursor/limit; follow nextCursor. Structure trash uses listTrashedItems.

Capability: core.self.read. Kind: read.

Field In Type Required
–cursor query string no
–limit query integer no

files

srvo files download url

Sign a five-minute attachment URL after a current permission check.

Capability: files.entries.read. Kind: read.

Field In Type Required
–file-id path string yes
–version-id body string no

srvo files entries copy

Copy a readable file into a writable folder using storage-side copy.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–file-id path string yes
–space-id body string yes
–folder-id body string no

srvo files entries get

Get one visible file’s metadata (name, type, size, folder, status, version). Never returns file bytes or URLs.

Capability: files.entries.read. Kind: read.

Field In Type Required
–file-id path string yes

srvo files entries move

Move a file after checking its folder permission.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–file-id path string yes
–base-version body integer yes
–space-id body string yes
–folder-id body string no
–confirm-token body string no

srvo files entries purge

Permanently delete a trashed file (bytes are removed after retention). Call without confirmationToken to preview, then with the returned token to commit.

Capability: files.entries.edit. Kind: destructive.

Field In Type Required
–file-id path string yes
–base-version body integer yes

srvo files entries rename

Rename a file after checking its folder permission.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–file-id path string yes
–base-version body integer yes
–name body string yes

srvo files entries restore

Restore a file after checking its folder permission.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–file-id path string yes
–base-version body integer yes
–confirm-token body string no

srvo files entries trash

Trash a file after checking its folder permission.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–file-id path string yes
–base-version body integer yes

srvo files folders create

Create a Files folder in the shared item tree.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–space-id body string yes
–parent-id body string no
–name body string yes
–visibility body string no

srvo files folders list

List visible folders first, then files, with sorting and paging.

Capability: files.entries.read. Kind: read.

Field In Type Required
–folder-id query string no
–space-id query string no
–parent-id query string no
–section query string no
–sort query string no
–direction query string no
–offset query integer no
–limit query integer no

srvo files folders move

Move a Files folder.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–folder-id path string yes
–base-version body integer yes
–parent-id body string yes
–confirm-token body string no

srvo files folders path

Get the folder path (breadcrumb) from the root to a visible file or folder. Ancestors you cannot see come back with null id and name.

Capability: files.entries.read. Kind: read.

Field In Type Required
–item-id path string yes

srvo files folders purge

Permanently delete a trashed Files folder and its contents you can edit (bytes are removed after retention). Call without confirmationToken to preview, then with the returned token to commit.

Capability: files.entries.edit. Kind: destructive.

Field In Type Required
–folder-id path string yes
–base-version body integer yes

srvo files folders rename

Rename a Files folder.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–folder-id path string yes
–base-version body integer yes
–name body string yes

srvo files folders restore

Restore a Files folder.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–folder-id path string yes
–base-version body integer yes
–confirm-token body string no

srvo files folders trash

Trash a Files folder.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–folder-id path string yes
–base-version body integer yes

srvo files preview url

Sign an allowlisted image/PDF preview; other types download as attachments.

Capability: files.entries.read. Kind: read.

Field In Type Required
–file-id path string yes
–version-id body string no

srvo files roots ensure

Create a usable Files root in a writable space, or return the existing root.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–space-id body string yes

srvo files shares create

Create a Transfer package or file request link. Returns the token once.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–kind body string yes
–space-id body string no
–target-item-id body string no
–audience body string no
–role body string no
–disable-download body boolean no
–title body string no
–message body string no
–recipients body string (repeatable) no
–expires-in-days body integer no
–password body string no
–download-limit body integer no
–file-ids body string (repeatable) no
–folder-id body string no

srvo files shares get

Read one of my shares with its view, download and upload history.

Capability: files.entries.read. Kind: read.

Field In Type Required
–share-id path string yes

srvo files shares list

List my Transfer packages and file requests, newest first.

Capability: files.entries.read. Kind: read.

Field In Type Required
–kind query string no
–limit query integer no

srvo files shares list-for-item

List all live links on an item I can manage.

Capability: files.entries.read. Kind: read.

Field In Type Required
–target-item-id path string yes

srvo files shares revoke

Revoke a share now. The public link stops at once.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–share-id path string yes

srvo files shares update

Update a v2 item link’s audience, role, password, expiry and download setting.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–share-id path string yes
–audience body string no
–role body string no
–disable-download body boolean no
–expires-in-days body integer no
–password body string no

srvo files storage usage

Read workspace storage usage, including versions, trash and pending reservations.

Capability: files.storage.manage. Kind: read.

No input fields.

srvo files trash list

List trashed Files folders and files you could restore. Paginated with offset and limit (max 200); hasMore says whether another page exists.

Capability: files.entries.read. Kind: read.

Field In Type Required
–offset query integer no
–limit query integer no

srvo files uploads abort

Abort a direct upload session owned by the caller.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–upload-id path string yes

srvo files uploads begin

Reserve storage and sign a direct upload. Never send file bytes to this endpoint.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–space-id body string yes
–folder-id body string no
–name body string yes
–size body integer yes
–content-type body string yes
–sha256 body string no
–collision body string no

srvo files uploads complete

Complete a direct upload session owned by the caller.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–upload-id path string yes
–etag body string no

srvo files uploads part

Part a direct upload session owned by the caller.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–upload-id path string yes
–part body json yes

srvo files uploads urls

Urls a direct upload session owned by the caller.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–upload-id path string yes
–parts body integer (repeatable) yes

srvo files versions list

List a visible file’s retained versions.

Capability: files.entries.read. Kind: read.

Field In Type Required
–file-id path string yes

srvo files versions restore

Restore a clean retained version without overwriting its bytes.

Capability: files.entries.edit. Kind: write.

Field In Type Required
–file-id path string yes
–version-id path string yes
–base-version body integer yes

flows

srvo flows create

Create a disabled flow with an immutable version.

Capability: flows.edit. Kind: write.

Field In Type Required
–definition body json yes
–run-as body string no

srvo flows disable

disable a flow.

Capability: flows.edit. Kind: write.

Field In Type Required
–flow-id path string yes

srvo flows email create

Give an email-triggered flow a new inbound address (replaces the old one). Returns its local part.

Capability: flows.edit. Kind: write.

Field In Type Required
–flow-id path string yes

srvo flows email disable

Remove a flow’s inbound email address.

Capability: flows.edit. Kind: write.

Field In Type Required
–flow-id path string yes

srvo flows enable

enable a flow.

Capability: flows.edit. Kind: write.

Field In Type Required
–flow-id path string yes

srvo flows get

Get a flow definition.

Capability: flows.edit. Kind: read.

Field In Type Required
–flow-id path string yes

srvo flows list

List workspace flows.

Capability: flows.edit. Kind: read.

Field In Type Required
–trash query boolean no

srvo flows restore

restore a flow.

Capability: flows.edit. Kind: write.

Field In Type Required
–flow-id path string yes

srvo flows runs clear

Clear terminal run history. Active runs remain.

Capability: flows.edit. Kind: write.

Field In Type Required
–flow-id path string yes

srvo flows runs get

Get a run and its redacted step trace.

Capability: flows.edit. Kind: read.

Field In Type Required
–run-id path string yes

srvo flows runs list

Page through newest flow runs.

Capability: flows.edit. Kind: read.

Field In Type Required
–flow-id path string yes
–status query string no
–cursor query string no
–limit query integer no

srvo flows secrets delete

Delete a vault secret (owners/admins).

Capability: flows.edit. Kind: write.

Field In Type Required
–name body string yes

srvo flows secrets list

List vault secret names for HTTP steps. Values are never returned.

Capability: flows.edit. Kind: read.

No input fields.

srvo flows secrets set

Create or replace a vault secret (owners/admins). HTTP steps reference it as {{secret.NAME}} and may only send it to the listed https origins.

Capability: flows.edit. Kind: write.

Field In Type Required
–name body string yes
–value body string yes
–origins body string (repeatable) yes

srvo flows test

Simulate a definition without writes or run usage.

Capability: flows.edit. Kind: read.

Field In Type Required
–definition body json yes
–sample body json yes

srvo flows trash

trash a flow.

Capability: flows.edit. Kind: write.

Field In Type Required
–flow-id path string yes

srvo flows update

Save a new immutable flow version.

Capability: flows.edit. Kind: write.

Field In Type Required
–flow-id path string yes
–base-version body integer yes
–definition body json yes
–run-as body string no

srvo flows usage

Get this workspace’s monthly run pool.

Capability: flows.edit. Kind: read.

No input fields.

srvo flows versions list

List immutable flow versions.

Capability: flows.edit. Kind: read.

Field In Type Required
–flow-id path string yes

srvo flows webhooks create

create an inbound webhook. Modes: srvo (signed + secret header), github (X-Hub-Signature-256), linear (Linear-Signature, paste Linear’s secret), path (secret token in the URL). Secrets are shown once.

Capability: flows.edit. Kind: write.

Field In Type Required
–flow-id path string yes
–mode body string no
–signing-secret body string no

srvo flows webhooks disable

disable an inbound webhook.

Capability: flows.edit. Kind: write.

Field In Type Required
–flow-id path string yes

srvo flows webhooks rotate

rotate an inbound webhook. Modes: srvo (signed + secret header), github (X-Hub-Signature-256), linear (Linear-Signature, paste Linear’s secret), path (secret token in the URL). Secrets are shown once.

Capability: flows.edit. Kind: write.

Field In Type Required
–flow-id path string yes
–mode body string no
–signing-secret body string no

import

srvo import connections disconnect

Disconnect your source connection and cancel its active runs.

Capability: import.plans.apply. Kind: write.

Field In Type Required
–connection-id path string yes

srvo import connections import

Start an import using your existing source connection.

Capability: import.plans.apply. Kind: write.

Field In Type Required
–connection-id path string yes

srvo import connections list

List your source connections without credentials.

Capability: import.plans.apply. Kind: read.

No input fields.

srvo import connector cancel

Stop an own import run and delete its token. Committed rows stay.

Capability: import.plans.apply. Kind: write.

Field In Type Required
–run-id path string yes
–base-version body integer yes

srvo import connector get

Get an own import run, its discovery while picking and its plan while ready.

Capability: import.jobs.read. Kind: read.

Field In Type Required
–run-id path string yes
–item-id query string no

srvo import connector pick

Choose what to import and where, then fetch it in the background.

Capability: import.plans.apply. Kind: write.

Field In Type Required
–run-id path string yes
–base-version body integer yes
–selection body json yes
–space-id body string no
–target body json no

srvo import connector retry

Retry one failed table without repeating completed tables.

Capability: import.plans.apply. Kind: write.

Field In Type Required
–run-id path string yes
–base-version body integer yes
–item-id body string yes

srvo import connector start

Apply the previewed plan in the background with the reviewed mappings.

Capability: import.plans.apply. Kind: write.

Field In Type Required
–run-id path string yes
–base-version body integer yes
–mappings body json yes

srvo import files preview

Preview base64 export files before importing: up to 50 files, 5 MB total and 50,000 rows. Writes no destination data.

Capability: import.plans.apply. Kind: read.

Field In Type Required
–source body string yes
–source-id body string yes
–files body json yes
–columns body json no
–id-column body string no
–sheet body string no
–time-zone body string no
–space-id body string no
–target body json no

srvo import jobs cancel

Stop an owned import after its last committed batch. Keep imported data.

Capability: import.plans.apply. Kind: write.

Field In Type Required
–job-id path string yes
–base-version body integer yes

srvo import jobs get

Get an import job and its committed progress.

Capability: import.jobs.read. Kind: read.

Field In Type Required
–job-id path string yes

srvo import jobs rollback

Trash objects created by an import, in resumable batches.

Capability: import.jobs.rollback. Kind: destructive.

Field In Type Required
–job-id path string yes

srvo import plans apply

Preview and apply a reviewed import plan in resumable batches.

Capability: import.plans.apply. Kind: destructive.

Field In Type Required
–plan body json no
–target body json no
–options body json no
–request-id body string no
–job-id body string no
–resume-token body string no

metrics

srvo metrics query

Query readable metric series and previous periods with the SRVO Script contract.

Capability: boards.records.read. Kind: read.

Field In Type Required
–metrics body json yes
–range body json no
–group-by body json no
–filters body json no
–compare-to body string no

srvo metrics validate

Validate metric tables, fields, units, ranges and access without aggregating.

Capability: boards.records.read. Kind: read.

Field In Type Required
–metrics body json yes
–range body json no
–group-by body json no
–filters body json no
–compare-to body string no

notes

srvo notes pages append-paragraph

Append one plain-text paragraph (max 50,000 characters) to the end of a Notes page. Pass the page’s current bodyVersion as baseVersion from getNote; a stale version fails with CONFLICT. Returns the updated page.

Capability: notes.pages.edit. Kind: write.

Field In Type Required
–page-id path string yes
–base-version body integer yes
–text body string yes

srvo notes pages create

Create a Notes page in a space (or under parentId), or a private quick note. Returns the new page. Send an idempotencyKey to make retries safe.

Capability: notes.pages.edit. Kind: write.

Field In Type Required
–id body string no
–space-id body string yes
–parent-id body string no
–title body string yes
–icon body string no
–private body boolean no
–quick body boolean no
–blocks body json no

srvo notes pages export

Export noteId as safe Markdown. Returns filename, contentType and base64 body over MCP, up to 1 MiB; use REST for larger files.

Capability: notes.pages.read. Kind: read.

Field In Type Required
–note-id path string yes

srvo notes pages get

Read a Notes page and its validated document blocks.

Capability: notes.pages.read. Kind: read.

Field In Type Required
–note-id path string yes

srvo notes pages list

List visible pages in a space or this member’s quick notes inbox.

Capability: notes.pages.read. Kind: read.

Field In Type Required
–space-id query string no
–quick query string no
–after query string no
–limit query integer no

srvo notes pages move

Move a Notes page and its subpages to another space or parent page. Pass the page’s version as baseVersion. Returns the moved page.

Capability: notes.pages.edit. Kind: write.

Field In Type Required
–page-id path string yes
–space-id body string yes
–parent-id body string yes
–base-version body integer yes

srvo notes pages rename

Rename a Notes page. Pass the page’s version as baseVersion; a stale version fails with CONFLICT.

Capability: notes.pages.edit. Kind: write.

Field In Type Required
–page-id path string yes
–title body string yes
–base-version body integer yes

srvo notes pages restore

Restore a trashed Notes page and its subpages. Call without confirmationToken to preview, then again with the returned token to commit.

Capability: notes.pages.edit. Kind: destructive.

Field In Type Required
–page-id path string yes
–base-version body integer yes

srvo notes pages save

Replace a Notes page body with the given blocks. Pass the page’s bodyVersion as baseVersion; a stale version fails with CONFLICT. Earlier bodies stay restorable from listNoteVersions. Prefer appendNoteParagraph for small additions.

Capability: notes.pages.edit. Kind: write.

Field In Type Required
–page-id path string yes
–blocks body json yes
–base-version body integer yes

srvo notes pages trash

Move a Notes page and its subpages to trash. Call without confirmationToken to preview, then again with the returned token to commit.

Capability: notes.pages.edit. Kind: destructive.

Field In Type Required
–page-id path string yes
–base-version body integer yes

srvo notes versions get

Read one retained version of a visible Notes page.

Capability: notes.pages.read. Kind: read.

Field In Type Required
–page-id path string yes
–version-id path string yes

srvo notes versions list

List the retained version metadata of a visible Notes page.

Capability: notes.pages.read. Kind: read.

Field In Type Required
–page-id path string yes

srvo notes versions restore

Restore a retained snapshot as a new version, preserving the previous body.

Capability: notes.pages.edit. Kind: write.

Field In Type Required
–page-id path string yes
–version-id path string yes
–base-version body integer yes

send

srvo send domains create

Add a sending domain. Returns the DNS records to add; a background job checks them.

Capability: send.domains.manage. Kind: write.

Field In Type Required
–domain body string yes
–region body string no
–open-tracking body boolean no
–click-tracking body boolean no
–tls body string no
–custom-return-path body string no

srvo send domains delete

Remove a sending domain. Its provider identity and DKIM keys are removed in the background.

Capability: send.domains.manage. Kind: write.

Field In Type Required
–domain-id path string yes

srvo send domains get

Read one sending domain with its DNS records and check status.

Capability: send.domains.manage. Kind: read.

Field In Type Required
–domain-id path string yes

srvo send domains list

List sending domains with the DNS records to add and their check status.

Capability: send.domains.manage. Kind: read.

Field In Type Required
–limit query integer no
–after query string no
–before query string no

srvo send domains update

Change a sending domain’s open/click tracking or TLS setting.

Capability: send.domains.manage. Kind: write.

Field In Type Required
–domain-id path string yes
–open-tracking body boolean no
–click-tracking body boolean no
–tls body string no

srvo send domains verify

Ask for a fresh DNS check of a sending domain (runs within a minute).

Capability: send.domains.manage. Kind: write.

Field In Type Required
–domain-id path string yes

srvo send emails batch

Send up to 100 emails at once (no attachments or scheduling). Strict: all or nothing; permissive: valid ones go out.

Capability: send.emails.send. Kind: write.

Field In Type Required
–emails body json yes
–validation body string no

srvo send emails cancel

Cancel a scheduled email before it goes out.

Capability: send.emails.send. Kind: write.

Field In Type Required
–email-id path string yes

srvo send emails get

Read one email sent through the API: recipients, subject, last event, and the body while kept.

Capability: send.messages.read. Kind: read.

Field In Type Required
–email-id path string yes

srvo send emails list

List emails sent through the API or SMTP, newest first (system mail is never listed).

Capability: send.messages.read. Kind: read.

Field In Type Required
–limit query integer no
–after query string no
–before query string no

srvo send emails reschedule

Move a scheduled email to another time (at most 30 days ahead). Only while it is scheduled.

Capability: send.emails.send. Kind: write.

Field In Type Required
–email-id path string yes
–scheduled-at body string yes

srvo send emails send

Send an email from a verified domain of this workspace (to, cc, bcc ≤ 50, attachments, optional scheduled_at).

Capability: send.emails.send. Kind: write.

Field In Type Required
–from body string yes
–to body json yes
–cc body json no
–bcc body json no
–reply-to body json no
–subject body string yes
–html body string no
–text body string no
–headers body json no
–tags body json no
–attachments body json no
–scheduled-at body string no

srvo send emails send-raw

Send a ready MIME message (the SMTP relay uses this): envelope sender, recipients (≤ 50) and the message as base64. Its From must be on the sender’s verified domain.

Capability: send.emails.send. Kind: write.

Field In Type Required
–from body string yes
–to body string (repeatable) yes
–raw body string yes

srvo send messages list

List outbound emails of this workspace, newest first, with delivery status.

Capability: send.messages.read. Kind: read.

Field In Type Required
–status query string no
–limit query integer no

srvo send status

Whether this server has an email provider set up (without one, mail waits in the queue).

Capability: send.messages.read. Kind: read.

No input fields.

srvo send suppressions add

Suppress an email address: mail from this workspace’s Send API skips it from now on.

Capability: send.suppressions.manage. Kind: write.

Field In Type Required
–email body string yes
–reason body string no

srvo send suppressions batch-add

Suppress up to 1,000 email addresses at once. Addresses already listed keep their entry.

Capability: send.suppressions.manage. Kind: write.

Field In Type Required
–emails body string (repeatable) yes
–reason body string no

srvo send suppressions batch-remove

Remove up to 1,000 email addresses from the suppression list at once.

Capability: send.suppressions.manage. Kind: write.

Field In Type Required
–emails body string (repeatable) yes

srvo send suppressions get

Read one suppression entry by its id or by the email address.

Capability: send.messages.read. Kind: read.

Field In Type Required
–suppression-id path string yes

srvo send suppressions list

List the workspace’s suppressed email addresses, newest first (bounces, complaints, manual).

Capability: send.messages.read. Kind: read.

Field In Type Required
–limit query integer no
–after query string no
–before query string no

srvo send suppressions remove

Remove an address from the suppression list (by id or address). Mail may reach it again, bounces included.

Capability: send.suppressions.manage. Kind: write.

Field In Type Required
–suppression-id path string yes

sergio

srvo sergio conversations create

Create a private Sergio conversation

Capability: ai.agent.use. Kind: write.

Field In Type Required
–title body string no
–scope body json no

srvo sergio conversations delete

Update your private conversation: delete

Capability: ai.agent.use. Kind: write.

Field In Type Required
–id path string yes
–base-version body integer yes
–forget-learned body boolean no

srvo sergio conversations get

Read your conversation and a page of messages

Capability: ai.agent.use. Kind: read.

Field In Type Required
–id path string yes
–cursor query string no
–limit query integer no

srvo sergio conversations list

List your private Sergio conversations

Capability: ai.agent.use. Kind: read.

Field In Type Required
–scope body json no
–pinned body boolean no
–query body string no
–cursor body string no
–limit body integer no

srvo sergio conversations move

Update your private conversation: move

Capability: ai.agent.use. Kind: write.

Field In Type Required
–id path string yes
–base-version body integer yes
–scope body json yes
–forget-learned body boolean no

srvo sergio conversations pin

Update your private conversation: pin

Capability: ai.agent.use. Kind: write.

Field In Type Required
–id path string yes
–base-version body integer yes
–pinned body boolean yes

srvo sergio conversations rename

Update your private conversation: rename

Capability: ai.agent.use. Kind: write.

Field In Type Required
–id path string yes
–base-version body integer yes
–title body string yes

srvo sergio conversations set-memory

Update your private conversation: setMemory

Capability: ai.agent.use. Kind: write.

Field In Type Required
–id path string yes
–base-version body integer yes
–use body boolean no
–learn body boolean no

srvo sergio conversations unpin

Unpin your private Sergio conversation

Capability: ai.agent.use. Kind: write.

Field In Type Required
–id path string yes
–base-version body integer yes

srvo sergio external list

Owner-only external coding agent chat list

Capability: ai.agent.use. Kind: read.

Field In Type Required
–scope body json no
–pinned body boolean no
–query body string no
–cursor body string no
–limit body integer no

srvo sergio external poll

Owner-only external coding agent chat poll

Capability: ai.agent.use. Kind: read.

Field In Type Required
–id body string yes
–cursor body string no
–limit body integer no

srvo sergio external post

Owner-only external coding agent chat post

Capability: ai.agent.use. Kind: write.

Field In Type Required
–id body string yes
–text body string yes

srvo sergio external read

Owner-only external coding agent chat read

Capability: ai.agent.use. Kind: read.

Field In Type Required
–id body string yes
–cursor body string no
–limit body integer no

srvo sergio memory entries copy-to-mine

Read or manage Sergio memory under scope and audience policy: entries.copyToMine

Capability: ai.agent.use. Kind: write.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory entries create

Read or manage Sergio memory under scope and audience policy: entries.create

Capability: ai.agent.use. Kind: write.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory entries forget

Read or manage Sergio memory under scope and audience policy: entries.forget

Capability: ai.agent.use. Kind: write.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory entries list

Read or manage Sergio memory under scope and audience policy: entries.list

Capability: ai.agent.use. Kind: read.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory entries pin

Read or manage Sergio memory under scope and audience policy: entries.pin

Capability: ai.agent.use. Kind: write.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory entries restore

Read or manage Sergio memory under scope and audience policy: entries.restore

Capability: ai.agent.use. Kind: write.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory entries share

Read or manage Sergio memory under scope and audience policy: entries.share

Capability: ai.agent.use. Kind: write.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory entries unpin

Read or manage Sergio memory under scope and audience policy: entries.unpin

Capability: ai.agent.use. Kind: write.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory entries update

Read or manage Sergio memory under scope and audience policy: entries.update

Capability: ai.agent.use. Kind: write.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory explain

Read or manage Sergio memory under scope and audience policy: explain

Capability: ai.agent.use. Kind: read.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory get

Read or manage Sergio memory under scope and audience policy: get

Capability: ai.agent.use. Kind: read.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory history list

Read or manage Sergio memory under scope and audience policy: history.list

Capability: ai.agent.use. Kind: read.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory instructions set

Read or manage Sergio memory under scope and audience policy: instructions.set

Capability: ai.agent.use. Kind: write.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory pause

Read or manage Sergio memory under scope and audience policy: pause

Capability: ai.agent.use. Kind: write.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory reevaluate

Read or manage Sergio memory under scope and audience policy: reevaluate

Capability: ai.agent.use. Kind: write.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory reset

Read or manage Sergio memory under scope and audience policy: reset

Capability: ai.agent.use. Kind: write.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory resume

Read or manage Sergio memory under scope and audience policy: resume

Capability: ai.agent.use. Kind: write.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory summary set

Read or manage Sergio memory under scope and audience policy: summary.set

Capability: ai.agent.use. Kind: write.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio memory suppressions clear

Read or manage Sergio memory under scope and audience policy: suppressions.clear

Capability: ai.agent.use. Kind: write.

Field In Type Required
–scope body json no
–audience body string no
–id body string no
–base-version body integer no
–kind body string no
–text body string no
–summary body string no
–summary-entries body json no
–instructions body string no
–sources body json no
–confirmed body boolean no
–conversation-id body string no
–cursor body string no
–limit body integer no

srvo sergio messages append

Append a user message to your private conversation

Capability: ai.agent.use. Kind: write.

Field In Type Required
–id path string yes
–text body string yes
–file-ids body string (repeatable) no
–parent-message-id body string no

srvo sergio messages edit

Edit your message: a new version and a fresh answer

Capability: ai.agent.use. Kind: write.

Field In Type Required
–message-id path string yes
–text body string yes
–tier body string no

srvo sergio messages retry

Answer again: a new version of a Sergio answer

Capability: ai.agent.use. Kind: write.

Field In Type Required
–message-id path string yes
–tier body string no

srvo sergio messages send

Send a message to Sergio and start streaming the answer

Capability: ai.agent.use. Kind: write.

Field In Type Required
–id path string yes
–text body string yes
–file-ids body string (repeatable) no
–parent-message-id body string no
–tier body string no
–via body string no

srvo sergio messages stop

Stop a streaming Sergio answer

Capability: ai.agent.use. Kind: write.

Field In Type Required
–message-id path string yes

srvo sergio tools decide

Confirm, cancel or undo your Sergio tool proposal using its existing confirmation and undo rules.

Capability: ai.agent.use. Kind: write.

Field In Type Required
–proposal-id path string yes
–decision body string yes

srvo sergio tools get

Read your Sergio tool proposal and its current decision state.

Capability: ai.agent.use. Kind: read.

Field In Type Required
–proposal-id path string yes

srvo

srvo srvo settings get

Read the workspace SRVO default. Unavailable or narrowed dashboards fall back to Overview.

Capability: srvo.settings.read. Kind: read.

No input fields.

srvo srvo settings set

Set the workspace SRVO default to a Workspace dashboard or Overview. Human owner/admin only.

Capability: srvo.settings.manage. Kind: write.

Field In Type Required
–default-dashboard-id body string yes

structure

srvo structure dashboards add-widget

Add one widget to dashboardId at optional baseVersion. Returns the saved layout; maximum 40 widgets.

Capability: structure.items.edit. Kind: write.

Field In Type Required
–dashboard-id path string yes
–widget body json yes
–base-version body integer no

srvo structure dashboards create

Create a dashboard with title and up to 40 widgets. Optional parentId/spaceId controls inherited access; top level is private. Returns the dashboard.

Capability: structure.items.edit. Kind: write.

Field In Type Required
–title body string yes
–space-id body string no
–parent-id body string no
–widgets body json no

srvo structure dashboards create-report

Create a weekly or monthly report dashboard with up to 40 widgets. Optional range defaults to last full period. Returns dashboard and report metadata; no delivery.

Capability: structure.items.edit. Kind: write.

Field In Type Required
–title body string yes
–space-id body string no
–parent-id body string no
–cadence body string yes
–range body string no
–widgets body json yes

srvo structure dashboards discard

Move a dashboard created by Sergio to the trash while its widgets are unchanged (Undo).

Capability: structure.items.edit. Kind: write.

Field In Type Required
–dashboard-id path string yes
–base-version body integer yes

srvo structure dashboards edit-widgets

Add, update or remove dashboard widgets by dashboardId and optional baseVersion. Returns the saved layout; maximum 40 widgets.

Capability: structure.items.edit. Kind: write.

Field In Type Required
–dashboard-id path string yes
–base-version body integer no
–add body json no
–update body json no
–remove body string (repeatable) no

srvo structure dashboards get

Read a dashboard’s saved widgets (the ones on tables the caller can see) and its version.

Capability: structure.tree.read. Kind: read.

Field In Type Required
–dashboard-id path string yes

srvo structure dashboards save

Replace a dashboard’s widgets (max 40; family metric, module or script). Send the version you read as baseVersion; a newer save returns CONFLICT.

Capability: structure.items.edit. Kind: write.

Field In Type Required
–dashboard-id path string yes
–base-version body integer yes
–widgets body json yes

srvo structure favourites add

Add an item to the caller’s favourites (last).

Capability: structure.favourites.edit. Kind: write.

Field In Type Required
–item-id path string yes

srvo structure favourites remove

Remove an item from the caller’s favourites.

Capability: structure.favourites.edit. Kind: write.

Field In Type Required
–item-id path string yes

srvo structure favourites views add

Favourite a visible view for this member.

Capability: structure.favourites.edit. Kind: write.

Field In Type Required
–view-id path string yes

srvo structure favourites views remove

Remove a personal view favourite.

Capability: structure.favourites.edit. Kind: write.

Field In Type Required
–view-id path string yes

srvo structure fields convert

Change a field’s type and convert every value. Preview shows how many values convert, need review or are lost; then commit.

Capability: structure.fields.edit. Kind: destructive.

Field In Type Required
–table-id path string yes
–fid path string yes
–type body string yes
–config body json no

srvo structure fields create

Add a field to a table. Config is validated per type; formulas are type-checked.

Capability: structure.fields.edit. Kind: write.

Field In Type Required
–table-id path string yes
–id body string no
–fid body string no
–name body string yes
–type body string yes
–config body json no
–description body string no
–required body boolean no
–before-fid body string no

srvo structure fields delete

Move a field to the trash (its values stay in the records). Preview first, then commit.

Capability: structure.fields.edit. Kind: destructive.

Field In Type Required
–table-id path string yes
–fid path string yes

srvo structure fields list

The fields of a table, in order (fields hidden from the caller are left out).

Capability: structure.tree.read. Kind: read.

Field In Type Required
–table-id path string yes

srvo structure fields update

Rename a field, edit its description, required flag, order or same-type config.

Capability: structure.fields.edit. Kind: write.

Field In Type Required
–table-id path string yes
–fid path string yes
–name body string no
–description body string no
–required body boolean no
–config body json no
–before-fid body string no

srvo structure forms create

Create a form on a Boards table. Each question maps to one table field. Returns the form, unpublished. Send an idempotencyKey to make retries safe.

Capability: structure.views.edit. Kind: write.

Field In Type Required
–table-id path string yes
–id body string no
–definition body json yes

srvo structure forms get

Get one form’s definition: title, questions and their board fields, and publish state. Forms that use a field hidden from you return NOT_FOUND.

Capability: structure.tree.read. Kind: read.

Field In Type Required
–form-id path string yes

srvo structure forms list

List the forms of one Boards table (tableId) that you can read, with their definitions. Not paginated.

Capability: structure.tree.read. Kind: read.

Field In Type Required
–table-id path string yes
–trash query boolean no

srvo structure forms publish

Publish a form so its public link accepts submissions, which are saved as records under your authority.

Capability: structure.views.edit. Kind: write.

Field In Type Required
–form-id path string yes
–base-version body integer yes

srvo structure forms restore

Restore a form as an unpublished draft.

Capability: structure.views.edit. Kind: destructive.

Field In Type Required
–form-id path string yes
–base-version body integer yes

srvo structure forms submissions

List a form’s submissions as record ids and submit times, in a stable order. Only records you can read are returned, so a page may hold fewer than limit; read each with getRecord. Paginated: pass next as after until it is null.

Capability: structure.tree.read. Kind: read.

Field In Type Required
–form-id path string yes
–after query string no
–limit query integer no

srvo structure forms trash

Move a form to trash and disable its public link.

Capability: structure.views.edit. Kind: destructive.

Field In Type Required
–form-id path string yes
–base-version body integer yes

srvo structure forms unpublish

Unpublish a form so its public link stops accepting submissions.

Capability: structure.views.edit. Kind: write.

Field In Type Required
–form-id path string yes
–base-version body integer yes

srvo structure forms update

Replace a form’s definition. Pass the form’s version as baseVersion. A published form is unpublished and must be published again.

Capability: structure.views.edit. Kind: write.

Field In Type Required
–form-id path string yes
–base-version body integer yes
–definition body json yes

srvo structure items create

Create a folder, table, page, dashboard or form in a space. Tables get their primary Title field.

Capability: structure.items.edit. Kind: write.

Field In Type Required
–id body string no
–space-id body string no
–parent-id body string no
–kind body string yes
–title body string yes
–icon body string no
–private body boolean no
–module body string no
–audience body string no
–workspace-role body string no
–before-id body string no

srvo structure items move

Move an item (with everything under it) to another parent or space.

Capability: structure.items.edit. Kind: write.

Field In Type Required
–item-id path string yes
–space-id body string no
–parent-id body string yes
–before-id body string no
–confirm-token body string no

srvo structure items reorder

Put an item before a sibling (beforeId) or last (null).

Capability: structure.items.edit. Kind: write.

Field In Type Required
–item-id path string yes
–before-id body string yes

srvo structure items restore

Restore a trashed item and its contents. Preview first, then confirm.

Capability: structure.items.edit. Kind: destructive.

Field In Type Required
–item-id path string yes

srvo structure items share get

Who can open an item and why: owner, people, teams, clients, workspace, inherited folders.

Capability: structure.tree.read. Kind: read.

Field In Type Required
–item-id path string yes

srvo structure items share set

Share an item with people, teams, clients or the whole workspace, or change or remove access.

Capability: structure.items.share. Kind: write.

Field In Type Required
–item-id path string yes
–base-version body integer yes
–input-workspace body string no
–add body json no
–update body json no
–remove body string (repeatable) no
–notify body json no
–confirm-token body string no

srvo structure items transfer-ownership

Make another workspace member the owner of an item; the previous owner keeps edit access.

Capability: structure.items.share. Kind: write.

Field In Type Required
–item-id path string yes
–to-member-id body string yes
–base-version body integer yes
–confirm-token body string no

srvo structure items trash

Move an item and everything under it to the trash (restorable for 30 days). Preview first, then commit.

Capability: structure.items.edit. Kind: destructive.

Field In Type Required
–item-id path string yes

srvo structure items trashed

Items in the trash the caller can see (newest first).

Capability: structure.tree.read. Kind: read.

Field In Type Required
–module query string no

srvo structure items update

Rename an item or change its icon.

Capability: structure.items.edit. Kind: write.

Field In Type Required
–item-id path string yes
–title body string no
–icon body string no

srvo structure recents list

Visible personal recents, newest first. At most 100 entries retained for 90 days.

Capability: structure.tree.read. Kind: read.

Field In Type Required
–limit query integer no

srvo structure recents touch

Remember a visible item for this member, pruning old and excess recents.

Capability: structure.tree.read. Kind: write.

Field In Type Required
–item-id path string yes

srvo structure spaces create

Create a space in a team (admins).

Capability: structure.spaces.manage. Kind: write.

Field In Type Required
–id body string no
–team-id body string yes
–name body string yes
–icon body string no
–color body string no

srvo structure spaces move

Move a space to another team. Preview lists members gaining or losing access.

Capability: structure.spaces.manage. Kind: destructive.

Field In Type Required
–space-id path string yes
–team-id body string yes

srvo structure spaces restore

Restore a space within 30 days, keeping prior child trash states.

Capability: structure.spaces.manage. Kind: destructive.

Field In Type Required
–space-id path string yes

srvo structure spaces trash

Trash a space and its contents for 30 days. Preview first.

Capability: structure.spaces.manage. Kind: destructive.

Field In Type Required
–space-id path string yes

srvo structure spaces trashed

List trashed spaces for space managers.

Capability: structure.spaces.manage. Kind: read.

Field In Type Required
–module query string no

srvo structure spaces update

Rename, re-icon, recolour or reorder a space (admins).

Capability: structure.spaces.manage. Kind: write.

Field In Type Required
–space-id path string yes
–name body string no
–icon body string no
–color body string no
–before-id body string no

srvo structure tables create

Create a Boards table with its fields and views in one step (one undo). Start from a template (structure.templates.list) or pass fields and views. Private by default.

Capability: structure.items.edit. Kind: write.

Field In Type Required
–id body string no
–space-id body string yes
–parent-id body string no
–title body string yes
–icon body string no
–audience body string no
–template-id body string no
–primary-name body string no
–fields body json no
–views body json no

srvo structure templates list

Board starting points (Blank, Projects, Finances, To-dos, Calendar / Events, Clients) with their fields and first view, for structure.tables.create.

Capability: structure.tree.read. Kind: read.

No input fields.

srvo structure tree get

The sidebar tree: spaces, items and the caller’s favourites, as far as the caller can see.

Capability: structure.tree.read. Kind: read.

Field In Type Required
–module query string no

srvo structure views create

Save a new view of a table (shared, or personal with personal: true). Also how to copy a locked view.

Capability: structure.views.personal. Kind: write.

Field In Type Required
–table-id path string yes
–id body string no
–type body string yes
–name body string yes
–personal body boolean no
–locked body boolean no
–config body json no
–before-id body string no

srvo structure views delete

Delete a view (moves it to the trash; records are not touched).

Capability: structure.views.personal. Kind: destructive.

Field In Type Required
–view-id path string yes

srvo structure views list

The saved views of a table: shared ones plus the caller’s personal ones, in order.

Capability: structure.tree.read. Kind: read.

Field In Type Required
–table-id path string yes

srvo structure views reorder

Put a view before another (beforeId) or last (null). Locked views follow the lock rules.

Capability: structure.views.personal. Kind: write.

Field In Type Required
–view-id path string yes
–before-id body string yes

srvo structure views set-selection-stats

Save which statistics the caller sees for a selection in this view (per person; locks don’t apply).

Capability: structure.views.personal. Kind: write.

Field In Type Required
–view-id path string yes
–stats body string (repeatable) yes

srvo structure views update

Change a view’s name, config (merged key by key) or lock. Locked views: only admins or their creator with the lock right; others save a copy.

Capability: structure.views.personal. Kind: write.

Field In Type Required
–view-id path string yes
–name body string no
–config body json no
–locked body boolean no

support

srvo support feedback submit

Send feedback to SRVO support

Capability: core.self.read. Kind: write.

Field In Type Required
–kind body string yes
–message body string yes
–include-technical-details body boolean no
–technical-details body json no
–error-id body string no

track

srvo track entries create

Create a completed manual time entry. Overlaps are allowed.

Capability: track.entries.create. Kind: write.

Field In Type Required
–mentioned-member-ids body string (repeatable) no
–id body string no
–member-id body string no
–start-at body string yes
–end-at body string yes
–time-zone body string yes
–description body string no
–record-id body string no
–project-record-id body string no
–client-record-id body string no
–tag-ids body string (repeatable) no
–billable body boolean no
–note body string no

srvo track entries delete

Move time entries to trash. Preview and confirm the exact versions.

Capability: track.entries.delete. Kind: destructive.

Field In Type Required
–entry-ids body string (repeatable) yes
–expected-versions body json no

srvo track entries export

Export own or permitted member/team time for the input date range with current rates and rounding. Returns filename, contentType and base64 body over MCP, up to 1 MiB; use REST for larger files. No paging.

Capability: track.entries.read. Kind: read.

Field In Type Required
–scope body string no
–from body string yes
–to body string yes
–time-zone body string yes
–member-id body string no
–team-id body string no
–format body string no
–locale body string no
–entry-ids body string (repeatable) no
–client-id body string no
–project-id body string no
–tag-id body string no
–billable body string no
–invoiced body string no
–notes body string no
–hours body string no
–rounding body string no

srvo track entries get

Get a visible time entry.

Capability: track.entries.read. Kind: read.

Field In Type Required
–entry-id path string yes
–include-deleted query boolean no

srvo track entries list

List own time or explicitly permitted member/team time intersecting a UTC range.

Capability: track.entries.read. Kind: read.

Field In Type Required
–scope query string no
–from query string yes
–to query string yes
–time-zone query string yes
–member-id query string no
–team-id query string no
–limit query integer no
–cursor query string no

srvo track entries mention

Invite memberIds to copy your confirmed entryId. Returns invitations; recipients keep independently editable copies. People only.

Capability: track.entries.update. Kind: write.

Field In Type Required
–entry-id path string yes
–member-ids body string (repeatable) yes

srvo track entries restore

Restore a trashed entry by entryId and baseVersion. Returns the restored entry and changeId. People only.

Capability: track.entries.restore. Kind: write.

Field In Type Required
–entry-id path string yes
–base-version body integer yes

srvo track entries summary

Day/week and project/client totals in an explicit time zone. Drafts excluded; overlaps count independently.

Capability: track.entries.read. Kind: read.

Field In Type Required
–scope body string no
–from body string yes
–to body string yes
–time-zone body string yes
–member-id body string no
–team-id body string no
–rounding body json no

srvo track entries update

Update a time entry at baseVersion. Completed entries cannot become timers.

Capability: track.entries.update. Kind: write.

Field In Type Required
–entry-id path string yes
–mentioned-member-ids body string (repeatable) no
–base-version body integer yes
–patch body json yes

srvo track mentions accept

Accept your invitation once and create your independently editable time entry.

Capability: track.entries.create. Kind: write.

Field In Type Required
–mention-id path string yes

srvo track mentions decline

Decline your Track invitation.

Capability: track.entries.read. Kind: write.

Field In Type Required
–mention-id path string yes

srvo track mentions people

Return all eligible active colleague id/name pairs in this workspace. No paging. People only.

Capability: track.entries.update. Kind: read.

No input fields.

srvo track pickers list

Read permitted Boards clients and projects for Track pickers.

Capability: track.entries.read. Kind: read.

No input fields.

srvo track preferences get

Return your saved Track view and calendar range. No inputs or paging. People only.

Capability: track.entries.read. Kind: read.

No input fields.

srvo track preferences update

Save your Track view and calendar range patch. Returns your saved preferences. People only.

Capability: track.entries.read. Kind: write.

Field In Type Required
–view body string no
–calendar-range body json no

srvo track settings get

Read applicable Track settings. Other members’ rates and costs are excluded.

Capability: track.entries.read. Kind: read.

No input fields.

srvo track settings update

Save workspace Track settings at baseVersion. Returns settings and changeId. Human owner/admin only; stale versions fail.

Capability: track.settings.manage. Kind: write.

Field In Type Required
–base-version body integer yes
–settings body json yes

srvo track tags archive

Set tagId archived state without changing historical entries. Returns tag and changeId. Human owner/admin only.

Capability: track.settings.manage. Kind: write.

Field In Type Required
–tag-id path string yes
–base-version body integer yes
–archived body boolean no

srvo track tags create

Create a Track tag from name and palette color. Returns tag and changeId. Human owner/admin only.

Capability: track.settings.manage. Kind: write.

Field In Type Required
–id body string no
–name body string yes
–color body string no

srvo track tags list

List the Track tag catalogue, including archived tags for history.

Capability: track.entries.read. Kind: read.

No input fields.

srvo track tags rename

Update tagId name and optional palette color. Returns tag and changeId. Human owner/admin only.

Capability: track.settings.manage. Kind: write.

Field In Type Required
–tag-id path string yes
–base-version body integer yes
–name body string yes
–color body string no

srvo track timer continue

Stop your running timer and continue entryId atomically. Returns the current entry and stoppedEntry. People only.

Capability: track.timer.use. Kind: write.

Field In Type Required
–entry-id body string yes

srvo track timer current

Read your running timer, or null when none is running.

Capability: track.timer.use. Kind: read.

No input fields.

srvo track timer start

Start a timer for yourself (agents start it for their person, as a draft).

Capability: track.timer.use. Kind: write.

Field In Type Required
–mentioned-member-ids body string (repeatable) no
–id body string no
–start-at body string no
–description body string no
–record-id body string no
–project-record-id body string no
–client-record-id body string no
–tag-ids body string (repeatable) no
–note body string no
–time-zone body string no
–billable body boolean no

srvo track timer stop

Stop your running timer.

Capability: track.timer.use. Kind: write.

Field In Type Required
–entry-id body string no
–base-version body integer no
–end-at body string no