Changelog

New features, improvements, and fixes in the Nimply API.

Added

Analytics endpoints

Read your performance data programmatically with three new endpoints, all requiring the analytics:read scope:

  • GET /v1/analytics/workspace — aggregated summary across all channels: total followers, average engagement, posts published, and like/comment/share totals for the range (defaults to the last 30 days).
  • GET /v1/analytics/channels/{id} — daily profile metrics for one channel: followers, engagement rate, impressions, reach, profile views, website clicks.
  • GET /v1/analytics/posts/{id} — all collected daily metric snapshots for one post, plus the latest snapshot.
Added

Nimply API developer preview

The Nimply public API is now available as a developer preview.

  • Workspace-scoped API keys (nim_live_*) created in the Nimply app under Settings → Developers, with granular read/write scopes.
  • 14 endpoints under /v1 covering workspaces, channels (including posting schedules), posts, and media.
  • Full posting workflow: upload media by URL, create drafts, schedule at an ISO 8601 time or the next free queue slot, or publish immediately.
  • Safe retries via the Idempotency-Key header, RFC 9457 problem details for errors, and rate limit headers on every response.

Read the quickstart to publish your first post, or browse the API reference. Endpoints may change before general availability — watch this changelog for updates.

Added

Approval workflow & bulk creation

Two additions for agencies and batch workflows:

  • ApprovalsPOST /v1/posts/{id}/request-approval moves a draft into PENDING_APPROVAL; POST /v1/posts/{id}/approve and /reject record the decision (with an optional comment) and fire post.approval_requested / post.approved / post.rejected webhooks. List what's waiting with GET /v1/posts?status=PENDING_APPROVAL. The MCP server gains matching request_approval, approve_post, and reject_post tools.
  • Bulk creationPOST /v1/posts/bulk creates up to 50 posts in one call with per-item results, so a failing item never aborts the batch. Ideal for CSV imports and RSS pipelines.
Added

MCP server

Nimply now speaks MCP. Connect Claude Code, Claude Desktop, Cursor, or any MCP-capable agent to https://mcp.nimply.io/mcp with your API key and manage your social content conversationally — 11 tools covering channels, posts, media, scheduling, and analytics. See the MCP guide for per-client setup.

Added

OAuth 2.1

The Nimply API and MCP server now support OAuth 2.1 — authorization-code flow with mandatory PKCE and dynamic client registration (RFC 7591). MCP clients with connector support (claude.ai, ChatGPT, Claude Desktop) can connect with a login-and-approve flow instead of copying API keys: the user picks a workspace, approves scopes, and access tokens work everywhere API keys do. Tokens are short-lived with rotating refresh tokens; revoke anytime. Discovery: https://api.nimply.io/.well-known/oauth-authorization-server.

Added

Update posts

PATCH /v1/posts/{id} lets you edit the content and/or title of a draft or scheduled post (requires the posts:write scope). Published posts cannot be edited; attempting to returns 409 Conflict.

Added

Webhooks

Subscribe to events instead of polling: register an HTTPS endpoint via POST /v1/webhooks (scope webhooks:manage) and receive signed deliveries for post.created, post.updated, post.published, post.failed, post.deleted, and channel.disconnected. Deliveries are HMAC-signed (X-Nimply-Signature), retried 5 times with backoff, and endpoints auto-disable after repeated failures. See the webhooks guide.