Works with all AI agents

Connect your AI agent

Choose your AI agent and connect in seconds.

Add to Claude

Works on every Claude plan, including free. Full Claude guide

  1. 1

    Add to Claude

    One click from Claude’s connector directory.

  2. 2

    Sign up or sign in

    Takes seconds, then you’re sent straight back.

  3. 3

    Ask Claude

    “Plan and schedule my posts for next week.”

PostEverywhere Authentication Guide

How to authenticate with the PostEverywhere API using Bearer tokens. Generate API keys, manage scopes, and secure your integration.

All API requests require a Bearer token in the Authorization header. If you have not set up your account yet, start with the Quick Start guide.

Create an API key in the dashboard

  1. Sign in to PostEverywhere
  2. Go to the Developers page and open the API Keys tab
  3. Click Create a key and choose its scopes
  4. Copy your key (it starts with pe_live_)

Keep Your Key Secret

Your API key grants the scopes it was created with (read, write, ai), optionally restricted to specific social accounts. Never expose it in client-side code, public repositories, or browser requests.

Send your key with every request

Include the key in every request:

curl https://app.posteverywhere.ai/api/v1/accounts \
  -H "Authorization: Bearer pe_live_abc123def456..."

Or with the Node.js SDK:

import { PostEverywhere } from '@posteverywhere/sdk';

const client = new PostEverywhere({
  apiKey: process.env.POSTEVERYWHERE_API_KEY,
});

What a successful authenticated response looks like

All responses follow a consistent envelope:

{
  "data": { },
  "error": null,
  "meta": {
    "request_id": "a1b2c3d4",
    "timestamp": "2026-04-01T10:00:00Z"
  }
}

On error:

{
  "data": null,
  "error": {
    "code": "invalid_api_key",
    "message": "Invalid or expired API key"
  },
  "meta": {
    "timestamp": "2026-04-01T10:00:00Z"
  }
}

Authentication failures come from the auth layer, so they omit retryable, details and meta.request_id. A request with no Authorization header at all returns a plain-text 401 Unauthorized.

All timestamps in responses are UTC. The meta.request_id value is what support will ask for if you need to debug a failed call, so log it.

Authentication errors and what causes them

Status Code Description
400 validation_error, invalid_json, invalid_id, … Invalid request body or parameters; each case has its own code, see Errors
401 invalid_api_key, api_key_revoked, api_key_expired Missing or invalid API key
404 not_found Resource doesn't exist
429 rate_limit_exceeded Too many requests (see Rate Limits)
500 internal_error Server error: retry with backoff

Where to go after your first authenticated call

Once your API key is set up, explore the platform guides and API reference:

Related: API key scopes · check your key and quota with /v1/me · testing your integration · social media OAuth explained · getting API access to each network