Integrate GhostPostt into your own tools, workflows, and applications. Available on Agency plan.
All API requests must include your API key in the Authorization header as a Bearer token. Generate an API key from Settings → Developer → API Keys.
Base URL: https://api.ghostpostt.ai/v1
Submit a URL for processing. Returns a full output bundle asynchronously via webhook, or synchronously if wait: true is set.
| Parameter | Type | Description |
|---|---|---|
| url required | string | The publicly accessible URL to repurpose. |
| outputs optional | string[] | Which outputs to generate. Defaults to all available on your plan. Options: "x_thread", "linkedin", "instagram", "threads", "seo_blog" |
| voice_id optional | string | ID of a saved brand voice profile to apply. Retrieve IDs from /v1/voices. |
| voice_strength optional | number | How strongly to apply the voice (0.0 – 1.0). Default: 0.7. |
| wait optional | boolean | If true, waits for generation to complete and returns the full bundle synchronously. Default: false. Timeout: 30s. |
| webhook_url optional | string | URL to POST results to when generation completes. Required if wait is false. |
Retrieve a list of past generation results for your account.
| Parameter | Type | Description |
|---|---|---|
| limit optional | number | Max results to return. Default: 20. Max: 100. |
| cursor optional | string | Pagination cursor from the previous response. |
Returns a list of saved brand voice profiles for your account.
Rate limit headers are included in every response: X-RateLimit-Remaining and X-RateLimit-Reset.
| Code | Meaning |
|---|---|
| 400 | Bad request — missing or invalid parameters |
| 401 | Unauthorized — invalid or missing API key |
| 402 | Payment required — plan limit reached or subscription lapsed |
| 422 | URL could not be fetched or parsed |
| 429 | Rate limit exceeded |
| 500 | Internal server error — retry after a few seconds |
When wait: false, GhostPostt will POST the completed generation to your webhook_url. The payload is identical to the synchronous response format.
Validate webhook authenticity using the X-GhostPostt-Signature header — an HMAC-SHA256 signature of the raw request body using your webhook secret (configured in Settings → Developer).