OmniSocialsOmniSocials
DocumentationAPI reference
Help centerSupport
  • Documentation
  • API reference
Developers
  • Quickstart
  • API reference
  • SDKs
  • MCP server
  • CLI
For AI agents
  • Docs for AI agents
  • llms.txt
  • OpenAPI spec
  • Postman collection
Product
  • OmniSocials
  • Pricing
  • Changelog
  • Help center
Company
  • Support
  • Privacy policy
  • Terms of service

© 2026 OmniSocials

OmniSocials on GitHubOmniSocials on XOmniSocials on LinkedIn
Overview
Get started
    QuickstartAuthenticationTestingRate limits and errorsRetries and duplicates
SDKs
CLI
MCPDocs for AI agentsWebhooks
Guides
Platforms
Integrations
Migrate
Plans and billing
GlossaryChangelogAPI reference
Get started

API authentication and API keys

Every OmniSocials API request requires a Bearer token in the Authorization header. Tokens are long-lived API keys created from the dashboard.

Text
Authorization: Bearer omsk_live_<YOUR_KEY>

Create an API key

  1. Sign in to app.omnisocials.com
  2. Open Settings → API
  3. Click Create API Key
  4. Name the key (e.g. "Zapier", "Internal automation"), pick the scopes it needs, and save
  5. Copy the key and store it somewhere safe. Members who can manage the organisation's API can copy it again later from the key list under Settings → API

Every key starts with omsk_live_ and works on your real, connected social accounts. There is no separate test environment or test key, so point CI and local development at a workspace whose accounts you can post to safely, or create drafts (they never publish on their own).

Scopes

Every key is scoped to a subset of the API. A key only has access to the scopes you selected when you created it.

ScopeGrants access to
posts:readGET /posts, GET /posts/:id
posts:writePOST /posts/create, PATCH /posts/:id, DELETE /posts/:id, publish endpoints
media:readGET /media, GET /media/:id, GET /folders
media:writePOST /media/upload, POST /media/upload-from-url, PATCH /media/:id, DELETE /media/:id
accounts:readGET /accounts, GET /accounts/:id
analytics:readGET /analytics/* endpoints, GET /posts/recent-platform
webhooks:manageFull CRUD on webhooks, including secret rotation
inbox:readOpt-in. GET /inbox/*: conversations, messages, and the next unanswered item
inbox:writeOpt-in. Replies, marking read, hiding and deleting comments
automations:readOpt-in. GET /automations, GET /automations/:id, and the activity log
automations:writeOpt-in. Create, update, and delete automations, and comment_dm_automation on posts

The first seven scopes are the default set. The inbox and automation scopes are opt-in: turn on Social Inbox access or Automations when you create the key. Existing keys never get them automatically.

Requests made with a key missing the required scope return 403 Forbidden. Add the missing scope by creating a new key, not by editing an existing one.

Rotating and revoking keys

Revoke a key from Settings → API at any time. Revocation is immediate. In-flight requests using a revoked key fail with 401 Unauthorized on the next call.

To rotate a key without downtime, create the new key first, update your integration, and only then revoke the old key.

Security notes

  • Never commit API keys to source control. Load them from environment variables or a secrets manager.
  • Give the keys you use in local development and CI only the scopes they need, and revoke them when a project ends.
  • A compromised key can do anything its scopes allow. Scope keys narrowly.
  • Tokens do not expire automatically. Rotate them periodically as a hygiene practice.
Last modified on October 20, 2026
QuickstartTesting
On this page
  • Create an API key
  • Scopes
  • Rotating and revoking keys
  • Security notes