staqlydocs
Dashboard

Settings

Rename your workspace, change the theme, manage signed-in devices, watch the job queue, and find backups, exports, integrations and webhooks.

Edit on GitHub

Settings is where you manage the workspace itself, rather than its content: its name and look, which browsers and phones can sign in, the job queue, exports and backups. Open it from the workspace menu or the user menu (both at the edges of the sidebar), or from the command palette (⌘ K).

Common tasks

  • Connect your phone: Settings → General → Devices → Connect a device (on a local install also in the user menu). In cloud mode it signs the phone in as you. See Phones & tablets.
  • Sign out a lost device: find it under Devices and sign it out.
  • Back up your data: Settings → Backups shows the commands for Staqly Community Edition (staqly serve backup <file>, or docker exec staqly server backup /data/backups/<file> with Docker); on Plus and above it creates and lists downloadable backups (on Starter it points to the data-only export). See Backup & restore.
  • Download everything: Settings → Data & privacy → Export workspace (on the Starter plan without the media files).
  • See what the server is doing: Settings → System → Queue lists publishing and schedule jobs with a Retry for failed ones.
  • Connect an agent: open Integrations (under Automation in the sidebar) for copy-ready setup steps.
  • Change how you sign in: Settings → Account → Sign-in methods (cloud). See Accounts.

Settings tabs

Settings has these tabs: General, Members (cloud, for owners and admins), Account (cloud), Plan & usage (with the billing in cloud mode), Data & privacy, Backups and System. Alerts have their own page, Alerts in the sidebar (see Alerts).

General

SectionWhat it does
WorkspaceRename the workspace and pick its Time zone (searchable; a new cloud workspace takes your browser's zone, the Community Edition the machine's). Repeating posts keep their time of day in this zone across daylight saving changes, and new schedules start in it. Save keeps both.
AppearanceLight, dark or system theme.
DevicesBrowsers and phones signed in to this workspace, with when each was last seen. Sign out any of them (it loses access at once and has to be connected again); Connect a device creates a new QR code. Signing a browser in again with a new link replaces its old entry, so each browser is listed once.
Sign out cloudLog out ends the session in this browser.

How long a post on your own automation may wait for a result is a collection setting (Fail publishing if nothing is reported within in Collection settings); without one, the server's PROCESSING_TIMEOUT (default 1 hour) applies.

Every browser signs in once, also in the Community Edition (with the access token, a link or a QR code), so Devices lists every browser that signed in, this computer included.

Members and Account (cloud)

Members lists who can open the workspace with their role, and the open invitations. Invite people opens a short form (an address and a role). Plans are priced per user: while the workspace pays, the card says how many seats are billed and the form says what one more person costs ("Each person you add is billed €29/month on Plus (prorated)."). Account shows your sign-in methods (add Google, add a passkey, change your email address, each in a small dialog) and, for the account owner, the account's workspaces. See Accounts. Its Notifications card picks which events reach you by email and in the bell; see Your notifications.

Plan & usage

The workspace's plan and where it stands (trial with the days left, active, payment failed, ending), this month's usage, and in cloud mode for owners and admins the billing: the price per user, the seats and the next payment, add-ons, extra X posts, the card on file and the invoices. Change plan opens the plan picker. See Plan & usage.

Data & privacy

SectionWhat it does
Activity logDownload every event, oldest first, as JSONL (one JSON event per line, the full event shape; .jsonl) or CSV. For a filtered slice, use Export on the Activity page.
Export workspaceBuild a ZIP with collections, posts, channels (without credentials), schedules, events, media files and webhooks. The card shows the progress; download it within 24 hours. API keys, sessions, the recovery key and channel credentials are never included; webhook secrets are redacted.
Retention & single postsA pointer to deleting one post (Delete in the post) and to server-side retention of old events and deliveries. Erasing a post together with its history is a purge over the API (POST /v1/posts/{id}/purge, admin; see Data export).
Delete workspace cloudPermanently delete the workspace and everything in it, and sign out every device. Only a signed-in dashboard session can do this, and you confirm by typing the workspace name. Earlier backups still contain the data.
Delete all data CommunityThe Community Edition has one workspace, so there is no delete button. The card shows how to remove the data instead: staqly service uninstall and rm -rf ~/.local/share/staqly with the binary, or docker rm -f staqly and docker volume rm staqly-data with Docker.

In cloud mode on the Starter plan, Export workspace builds a data-only ZIP: the same files without the media files (media.ndjson still lists each file by id, name and type). A note under it says that files, backups and the activity log export come with Plus and above, and the Activity log card is not shown.

See Data export.

Backups

In the Community Edition, the Backup & restore card shows the commands for a consistent copy of the database and the uploads, in two tabs:

  • staqly serve: staqly serve backup ~/staqly-backup.db (pass the same --data you run Staqly with), then copy the uploads folder of the data directory.
  • Docker: docker exec staqly server backup /data/backups/staqly-backup.db, docker cp to copy it out, and a tar of the uploads from the data volume.

In cloud mode on a paid plan, the Backups card lists the workspace's backups (GET /v1/workspace/exports). Create backup builds a ZIP of the whole workspace (collections, posts, channels, schedules, events and media); when it is ready, Download works for 24 hours. On Starter the tab says that backups come with Plus and above and links to the data-only export in Data & privacy.

See Backup & restore.

System

SectionWhat it does
HealthLive readiness of the staqly API (Ready or Not ready, the version, and each check: database, migrations, background workers), refreshed every 30 seconds, with a Check now button.
QueueThe background jobs: Queued, Running, Failed and Done today counts, a filter (all, failed, queued, running) and the latest jobs with their kind (Publish a post, Publish on a channel, Run a schedule, Refresh a channel sign-in), status, tries and last error. Retry queues a failed job again; the × cancels a queued one. Refreshes every few seconds. See Jobs.
MonitoringThe monitoring endpoints with your instance's API URL: /livez, /readyz and /metrics (Prometheus; needs METRICS_TOKEN except for curl on the same machine in the Community Edition).

See Monitoring.

Integrations

Integrations (under Automation in the sidebar) has these tabs: Setup (how to connect an agent), Agents & activity (who is connected and what they did) and, in cloud mode, API keys.

On Setup:

  • Connection: your instance's agent URL and a Test connection button (it checks /health and your session through the dashboard proxy and shows the version, workspace and who you are signed in as). The Community Edition points agents at this computer with its access token over HTTP (or STDIO inside the Docker container, without one); cloud mode points them at its own address with an API key. The Community Edition never uses cloud API keys.
  • Access token Community: the token agents, scripts and n8n send as Authorization: Bearer, masked, with Copy and Rotate. Rotating makes a new token: the old one stops working at once, every other browser is signed out (this one stays) and your agents need the new token. See the access token.
  • Tabs Claude Code, Codex, OpenCode, n8n and REST & MCP, each with a copy-ready snippet using your instance's real URL (with $STAQLY_API_KEY for the access token locally, and in cloud mode the API key you just created) and a Full guide link to these docs. ?tab=codex opens a tab directly; ?view=agents opens Agents & activity.

On Agents & activity:

  • Agents (MCP clients) and API connections (REST clients): everything that talked to this workspace (see Agents).
  • Recent activity: the latest agent events (in cloud mode: events triggered with API keys). Select one to see only its events; Show all goes back. View all opens Activity.

API keys cloud (/integrations/api-keys):

  • Create API key: a name (required), a set of scopes and an expiry: 1 hour, 8 hours, 1 day, 1 week, 1 month (the default), 1 year, or a day you pick up to a year ahead. A key never lasts longer than a year. Presets fill in the scopes for you:

    PresetScopes
    Content agent (default)collections:read, posts:read, posts:write, posts:publish, media:read, media:write
    Publisher automationposts:read, posts:publish (reports results for your own automation)
    Read-only agentcollections:read, posts:read, channels:read, events:read
    Full accessEvery scope, including admin

    Only Full access can delete: tick posts:delete (posts and media) or collections:delete yourself for a key that should clean up.

    The raw key is shown once.

  • Each key shows its state: Active, Expired or Revoked.

  • Rotate a key: revoke it and issue a replacement with the same name and scopes; the new key is shown once.

  • Revoke a key.

  • API keys are for agents and automation: people sign in to the dashboard with Google, an email code or a passkey, never with a key. In a workspace without an account, the key from signup, Admin key (or Admin key (recovered) after a recovery), is listed here too; don't revoke your last admin key unless you still have the recovery key.

Snippets on the integration pages include the key you just created. It is kept only in memory in that browser tab, never in local storage.

Webhooks

Webhooks has its own sidebar entry: create, edit, test and delete endpoints, and browse the delivery history with manual retry. Each webhook is one row that starts with its Active / Paused switch (a paused webhook sends nothing; events in the meantime are skipped). The timeout is set in seconds. Click a delivery to see its full error and the receiver's response. See Webhooks.

Forms and messages

These conventions hold across the dashboard (posts, collections, channels, schedules, webhooks, alerts, API keys):

  • Forms open in a drawer on the right; short ones (a name, an address, a code) in a dialog. Closing a drawer with changes you haven't saved (Esc or ×) asks Discard your changes? first; after a save it closes without asking.
  • Required fields are marked with a red * after their label.
  • Invalid fields turn red, with the message right under the field. Server-side errors (for example a name that is already taken) appear on the field they belong to.
  • Messages (toasts such as Webhook created or an error) appear at the bottom right and close on their own; each has a close button (×) to dismiss it right away.

Next steps

On this page