← Back to overview

    REST API

    Server-side integrations use your Prostnow API key. Keys are created in the dashboard and begin with pn_live_. Only store them in secure environments — never in browsers or public repos.

    Base URL

    All routes below are relative to your deployed site (adjust the host for local development).

    https://www.prostnow.com/api/v1

    Authentication

    Send the raw key in an Authorization header:

    Authorization: Bearer pn_live_…

    Get post status

    Returns one post that belongs to the API key's account. Use the Convex document id from the dashboard URL or API list response.

    GET https://www.prostnow.com/api/v1/posts/{postId}

    Successful response is a JSON object. Important fields:

    • sent true when the post is treated as published (live).
    • failed true if publishing failed in the automation pipeline.
    • displayStatus posted, scheduled, or draft for UI-style grouping.
    • platformViewUrls — optional map of platform → public URL after a successful publish.

    Example:

    curl -s \
      -H "Authorization: Bearer $PROSTNOW_API_KEY" \
      "https://www.prostnow.com/api/v1/posts/j572abc123..."

    Webhooks

    In Dashboard → API Keys, set an https endpoint (or http://localhost for local testing). When a post is first published, we send a single JSON POST with "type": "post.sent" and the same post fields as the REST API. Verify the request using the signing secret and headers:

    • X-Prostnow-Timestamp — Unix time in milliseconds
    • X-Prostnow-Signature t=…,v1=… where v1 is hex-encoded HMAC-SHA256 of {timestamp}.{raw JSON body} with your signing secret

    List posts

    Newest first. Optional limit (1–50, default 20).

    GET https://www.prostnow.com/api/v1/posts?limit=20

    Example:

    curl -s \
      -H "Authorization: Bearer $PROSTNOW_API_KEY" \
      "https://www.prostnow.com/api/v1/posts?limit=10"

    Response shape: { "posts": [ … ] }.

    Errors

    Common HTTP status codes:

    • 401 — missing key, wrong prefix, or revoked / unknown key.
    • 404 — post id does not exist or is not owned by this account.