Move from Ayrshare to PostWire in an afternoon

Ayrshare's publish request, mapped field by field to PostWire's, with the same post side by side as cURL, an n8n node and an MCP call — and a converter that rewrites your Ayrshare requests for you, in the browser.

What changes, in four lines. The key: Authorization: Bearer pw_live_…. Profile-Key header (one User Profile per client) becomes brand_id, one brand per client. Scheduling: POST /api/schedule with run_at. And one thing PostWire adds: POST /api/generate writes each network's post from one idea before you publish.

Ayrshare's fields read on its own docs on Oct 9, 2026, linked on each row; PostWire's checked against openapi.json when this page was built.

Field by field

Ayrshare: POST https://api.ayrshare.com/api/post. PostWire: POST https://postwire.io/api/post (now) or POST https://postwire.io/api/schedule (later).

AyrsharePostWireNotes
postayrshare.com, Oct 9, 2026textThe same text for every network — or let POST /api/generate write one per network.
platformsayrshare.com, Oct 9, 2026platformsSame idea; names differ (twitter → x).
mediaUrlsayrshare.com, Oct 9, 2026media[].url (or photo_url / video_url)Public https URLs in both.
scheduleDateayrshare.com, Oct 9, 2026run_at (POST /api/schedule)ISO 8601 in both; PostWire also takes "next_slot".
Profile-Key (header)ayrshare.com, Oct 9, 2026brand_idOne brand per client, in the body.
firstComment.commentayrshare.com, Oct 9, 2026per_platform.<network>.first_commentPostWire: LinkedIn, X, Bluesky, Mastodon.
youTubeOptions.titleayrshare.com, Oct 9, 2026title
idempotencyKeyayrshare.com, Oct 9, 2026idempotency_keyPostWire: 24 hours; an identical post is also refused for 2 minutes without a key.
<network>Options objects (e.g. youTubeOptions)ayrshare.com, Oct 9, 2026options / per_platform.<network>Network options, e.g. privacy for TikTok and YouTube.

Network names: twitter → x · facebook → facebook · instagram → instagram · linkedin → linkedin · tiktok → tiktok · youtube → youtube · bluesky → bluesky · telegram → telegram · threads → not offered by PostWire · pinterest → not offered by PostWire · reddit → not offered by PostWire · gmb → not offered by PostWire · snapchat → not offered by PostWire.

The same post, side by side

Ayrshare — their docs' example

curl \
  -H "Authorization: Bearer API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "post": "Today is a great day!",
    "platforms": ["twitter", "facebook", "instagram", "linkedin"],
    "mediaUrls": ["https://img.ayrshare.com/012/gb.jpg"]
  }' \
  -X POST https://api.ayrshare.com/api/post

From ayrshare.com, read Oct 9, 2026.

PostWire — REST (the converter's output)

curl -X POST https://postwire.io/api/post \
  -H "Authorization: Bearer $POSTWIRE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "platforms": [
    "x",
    "facebook",
    "instagram",
    "linkedin"
  ],
  "text": "Today is a great day!",
  "photo_url": "https://img.ayrshare.com/012/gb.jpg"
}'

your key from the pasted command is not carried over: the output uses $POSTWIRE_API_KEY

PostWire — n8n node

PostWire node
  Resource:   Post
  Operation:  Publish
  Networks:   x, facebook, instagram, linkedin
  Content:    Same Text on Every Network
  Text:       Today is a great day!
  Media URL:  https://img.ayrshare.com/012/gb.jpg
  Options → Brand: the client's brand

PostWire — MCP (Claude, ChatGPT, any agent)

post_to_social({
  "platforms": [
    "x",
    "facebook",
    "instagram",
    "linkedin"
  ],
  "text": "Today is a great day!",
  "photo_url": "https://img.ayrshare.com/012/gb.jpg"
})

# or ask your agent: "Post this on X, Facebook, Instagram and LinkedIn"

What changes

AyrsharePostWire
AuthenticationAuthorization: Bearer API_KEYayrshare.com, Oct 9, 2026Authorization: Bearer pw_live_… — an API key from the dashboard; the MCP server also signs in with OAuth 2.1
One clientProfile-Key header (one User Profile per client)ayrshare.com, Oct 9, 2026brand_id — one brand per client, its networks connected once (GET /api/brands lists them)
SchedulingscheduleDate (UTC, YYYY-MM-DDThh:mm:ssZ) in the same requestayrshare.com, Oct 9, 2026POST /api/schedule with run_at (ISO 8601 with offset) or "next_slot", checked at queue time
WebhooksRegistered per action: feed, social, scheduled, batch, messages, mentions, comments, automations, suspendedayrshare.com, Oct 9, 2026post.published, post.failed, connection.reauth_required — one per network, signed (PostWire-Signature, HMAC-SHA256), retried for two days
Retries without duplicatesidempotencyKey in the body: duplicate IDs are rejectedayrshare.com, Oct 9, 2026idempotency_key (24 hours); an identical post is refused for 2 minutes even without one
Checking a postGET https://api.ayrshare.com/api/post/:idayrshare.com, Oct 9, 2026GET /api/post/status, or the webhook

Convert your Ayrshare requests

Paste a cURL command or a JSON body from your code. The PostWire request comes out, ready to run.

Networks, when the request only has account or channel IDs

Runs in your browser: no AI, no server, nothing you paste or upload leaves this page. Try it free

Move in an afternoon

  1. Open a PostWire account (free, no card) and create an API key under API & MCP.
  2. Create one brand per client — POST /api/brands or the dashboard. It takes the place of Ayrshare's Profile-Key header.
  3. Connect each client's networks: POST /api/connect-link returns a one-hour link the client opens to sign in to each network. TikTok, Meta and Google approvals are PostWire's, so there is no app review on your side.
  4. Swap the base URL and the auth header in your code: https://postwire.io/api/ and Authorization: Bearer pw_live_….
  5. Convert your requests with the converter above (or by the field table), and send brand_id with each one.
  6. Move the queue: list what is still scheduled on Ayrshare and re-create it with POST /api/schedule, or as one CSV under Automate → Bulk upload (checked row by row before anything is scheduled).
  7. Point your webhook receiver at PostWire: POST /api/webhooks with your URL, and verify PostWire-Signature.
  8. Send one real post to one network and watch GET /api/post/status or the webhook.
  9. When the Ayrshare queue is empty, cancel that plan. PostWire's paid plans have a 14-day refund if it is not for you.

Where PostWire is ahead of Ayrshare

  • It writes the posts. One request turns one idea into a native post per network — a hook for TikTok, a title and tags for YouTube, a longer post for LinkedIn — and the next call publishes them. Ayrshare publishes the text you send; its AI features come with the Max Pack, a +$300 a month add-on on Business.
  • A free plan, with the API and MCP in it. 1 business, no card, no time limit. Ayrshare has no free plan; its 28-day trial is on Launch only.
  • Add it to Claude by signing in. PostWire's hosted MCP server takes OAuth 2.1 or an API key. Ayrshare's MCP server authenticates with a static Bearer key, so it is not a connector you add by signing in.
  • X without your own X developer app. Paid plans post through PostWire's X app, with X credits included every month. Ayrshare requires your own X developer app since Mar 31, 2026.

Questions people ask

How long does it take to move from Ayrshare to PostWire?

An afternoon for most integrations: the request maps field by field (the table on this page), the auth header and the client key change, and the converter on this page turns Ayrshare requests into PostWire's. Connecting each client's networks is one sign-in per network, from a link you can send the client.

What replaces Ayrshare's Profile-Key header (one User Profile per client)?

A brand: one per client business, each with its own connected networks. Send brand_id with the post (GET /api/brands lists them); a key that only has one brand can leave it out.

Does PostWire have webhooks and idempotency like Ayrshare?

PostWire signs every webhook (PostWire-Signature: HMAC-SHA256) and sends post.published, post.failed and connection.reauth_required, one per network, retried for two days. An identical post is refused for 2 minutes, or for 24 hours when you send your own idempotency_key.

Can I try PostWire before cancelling Ayrshare?

Yes. The free plan has the REST API and the MCP server (1 business, 20 posts a month, no card), and Pro has a 7-day free trial; run both side by side until your queue on Ayrshare is empty.

Type one idea and see the post each network gets.

The demo on the home page writes live, with no account, and never publishes. The free plan covers one business — every network connects free, 2 networks per post — with no card and no time limit. Paid plans have a 14-day refund.