LazyRelay
← Back to home

LazyRelay for Developers

Schedule and publish posts, upload media, read analytics and run client approvals from your own code, your terminal, an AI agent or an automation tool. Every post can be checked for real Proof-of-Publish status, not just an accepted request.

REST API + OpenAPI 3.1 27 MCP tools Node SDK & CLI (MIT) 17 platforms

Ways to connect

REST APIFull reference for every endpoint MCP server27 tools for AI agents and editors Node SDK & CLI@lazyrelay/sdk on npm n8n noden8n-nodes-lazyrelay on npm MakeScenario guide with HTTP modules ZapierInvite-only app

REST API

The same API LazyRelay's own dashboard runs on. Create an API key in your dashboard's API Keys tab (keys start with lzr_live_) and send it as a bearer token. The full reference is at lazyrelay.com/docs.

The whole API is also described as OpenAPI 3.1 at https://lazyrelaylazyrelay-backend.onrender.com/api/openapi.json. Postman, code generators and anything else that reads OpenAPI can use it.

MCP server

Connect Claude, ChatGPT, Cursor, VS Code, Gemini CLI, Codex CLI and other AI agents to your account with 27 tools. Use the hosted server at https://lazyrelaylazyrelay-backend.onrender.com/mcp and sign in with your LazyRelay account, or run the local package @lazyrelay/mcp-server with an API key. Setup guides for each tool are at lazyrelay.com/mcp.

Node SDK and command line tool

@lazyrelay/sdk is a typed client for the REST API plus a lazyrelay command line tool. It is MIT licensed, has no runtime dependencies and needs Node 18 or newer.

npm install @lazyrelay/sdk

To use the command line tool without adding it to a project:

npx @lazyrelay/sdk whoami

Pass your key through the LAZYRELAY_API_KEY environment variable rather than writing it into code or a command. A few real commands:

export LAZYRELAY_API_KEY=lzr_live_...

lazyrelay whoami
lazyrelay accounts
lazyrelay rules instagram
lazyrelay posts schedule --account <id> --text "We just launched!" --at 2026-10-01T09:00:00Z --media ./launch.png --tag launch
lazyrelay posts list --status pending
lazyrelay analytics --days 7

In code:

import { LazyRelay } from "@lazyrelay/sdk";

const lr = new LazyRelay({ apiKey: process.env.LAZYRELAY_API_KEY });
const accounts = await lr.accounts.list();
const instagram = accounts.find((a) => a.platform === "instagram")!;

const post = await lr.posts.schedule({
  socialAccountId: instagram.id,
  content: "We just launched!",
  scheduledFor: "2026-10-01T09:00:00Z",
});
console.log(post.id, post.status); // "pending"

A post goes to one account, so call posts.schedule once per account to post to several. Publishing is queued, so check post_results[0].verified_live afterwards to see that it went live. The SDK also includes a helper to verify the signature on webhooks LazyRelay sends you.

n8n

The n8n-nodes-lazyrelay community node (MIT, on npm) adds a LazyRelay node and a LazyRelay Trigger node that starts a workflow when a post goes live or fails. Setup and status are on the n8n guide.

Make and Zapier

Make works today through its built-in HTTP and Webhooks modules against the public API. Zapier is an invite-only app, and its page has the link to connect.

Platforms

LazyRelay posts to 17 platforms: Facebook, Instagram, TikTok, Pinterest, YouTube, LinkedIn, Threads, Mastodon, Bluesky, Telegram, Discord, Tumblr, WordPress (self-hosted), dev.to, Hashnode, Lemmy and Slack. X is coming soon. Use the platform rules endpoint (or the get_platform_rules MCP tool, or lazyrelay rules) to see what each platform accepts before you post.

Need an API key? API, MCP and SDK access is included on every plan, including Free.

See plans and get started free