curl --request POST \ --url https://api.superx.so/v1/posts/draft \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "brief": "We cut churn from 6.2% to 3.8% by replacing the onboarding video with a 3-step checklist."}'
{ "data": { "drafts": [ { "text": "Most founders think they need better retention strategies.\n\nThey do not.\n\nThey need simpler onboarding.", "mirrored": { "source": "you" } } ], "credits_charged": 3 }}
{
"error": {
"code": "mirror_rejected",
"message": "That post cannot be used as a mirror (url). Pass the plain text of a substantial post with no links and no engagement bait."
}
}
{
"error": {
"code": "invalid_api_key",
"message": "Unknown or revoked API key"
}
}
{
"error": {
"code": "writes_main_account_only",
"message": "Accounts shared with you are read-only through the API. Drafting works on your own main and linked accounts."
}
}
{
"error": {
"code": "account_not_found",
"message": "No account with that id belongs to this key"
}
}
{
"error": {
"code": "creator_style_pending",
"message": "Style guide for @naval is being prepared, retry in about a minute."
}
}
{
"error": {
"code": "generation_failed",
"message": "Drafting failed and no credits were spent. Try again shortly."
}
}
Scheduling
Write post drafts in your voice
Writes post drafts from a brief, in the account’s own voice. Nothing
is scheduled and nothing is stored: the response is text for you to
review and edit, then send to POST /v1/scheduled-posts to save a
draft or schedule it.
Every draft copies the SHAPE of a proven post, never its content.
Pass one in mirror (the text of a post from GET /v1/inspiration
works well), or leave mirror out and a proven shape is picked for
you, optionally biased toward a collection.
Voice: mine (default) writes as the account in account_id, from
that account’s own posts, style guide and rules (your main account
when account_id is omitted), creator writes in a creator’s style,
and hybrid keeps the account’s substance with the creator’s flavor.
The creator’s style guide is prepared in the
background the first time you name them; that first call returns
409 creator_style_pending and the retry a minute later succeeds.
Costs AI credits per draft (drafts that fail are refunded), and a
call takes roughly 20 to 40 seconds. Idempotency-Key is NOT
supported: generation is not idempotent, and a replay would produce
different text anyway.
POST
/
v1
/
posts
/
draft
curl --request POST \ --url https://api.superx.so/v1/posts/draft \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "brief": "We cut churn from 6.2% to 3.8% by replacing the onboarding video with a 3-step checklist."}'
{ "data": { "drafts": [ { "text": "Most founders think they need better retention strategies.\n\nThey do not.\n\nThey need simpler onboarding.", "mirrored": { "source": "you" } } ], "credits_charged": 3 }}
{
"error": {
"code": "mirror_rejected",
"message": "That post cannot be used as a mirror (url). Pass the plain text of a substantial post with no links and no engagement bait."
}
}
{
"error": {
"code": "invalid_api_key",
"message": "Unknown or revoked API key"
}
}
{
"error": {
"code": "writes_main_account_only",
"message": "Accounts shared with you are read-only through the API. Drafting works on your own main and linked accounts."
}
}
{
"error": {
"code": "account_not_found",
"message": "No account with that id belongs to this key"
}
}
{
"error": {
"code": "creator_style_pending",
"message": "Style guide for @naval is being prepared, retry in about a minute."
}
}
Whose voice to write in. mine is the voice of the account in account_id: its own posts, style guide and rules. Omit account_id and that is your main account.
Plain text of a proven post whose shape to copy. Only the form is reused, never the content. Pick a mirror with room for your data: a two-line aphorism squeezes the facts out. Omit to have a shape picked for you.
Format collection id to bias the picked shape toward, for example numbered_list or contrarian_take. Used only when mirror is omitted; an id that is unknown or not usable as a mirror fails with 400 invalid_collection, which lists the ids that do work.
Any account you own, meaning your main account (the default when omitted) or one linked to it. With voice: mine the drafts use this account's own posts and style guide. An account shared with you returns 403 writes_main_account_only.
Response
The generated drafts. Nothing was scheduled or stored.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"SuperX","colors":{"primary":"#F4503B","light":"#FB7359","dark":"#D93820"},"logo":{"light":"https://mintcdn.com/superx/ZOrKRYsYXbBhitoI/logo/light.svg?fit=max\u0026auto=format\u0026n=ZOrKRYsYXbBhitoI\u0026q=85\u0026s=d465c38938c34f6ab75cfc50d0039be2","dark":"https://mintcdn.com/superx/ZOrKRYsYXbBhitoI/logo/dark.svg?fit=max\u0026auto=format\u0026n=ZOrKRYsYXbBhitoI\u0026q=85\u0026s=b717e05282be47857b4c42e3c9f28b15"},"favicon":"https://mintcdn.com/superx/ZOrKRYsYXbBhitoI/favicon.png?fit=max\u0026auto=format\u0026n=ZOrKRYsYXbBhitoI\u0026q=85\u0026s=05aaa6612cdd959e0edb14d963806660","appearance":{"default":"system"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"superx","hasAudioNarration":false,"actualSubdomain":"superx","customDomains":["docs.superx.so"],"gitSource":{"type":"github","owner":"superx-so","repo":"superx-docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6ac68ff611e54a617d7548d2","collectionId":"371386e6-3679-44e4-aa28-f1b7adee5865","liveDeploymentHistoryId":"6ac68ff611e54a617d7548d2","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ac68ff611e54a617d7548d2","clientVersion":"0.0.4067","searchFilterCounts":[{"language":"default","tag":"API Reference","count":106},{"language":"default","tag":"Signals","count":12},{"language":"default","tag":"Documentation","count":10},{"language":"default","tag":"Articles","count":10},{"language":"default","tag":"Scheduling","count":10},{"language":"default","tag":"Audience","count":9},{"language":"default","tag":"Contact Lists","count":9},{"language":"default","tag":"Datasets","count":8},{"language":"default","tag":"Context","count":7},{"language":"default","tag":"Engage","count":7}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/scheduling/write-post-drafts-in-your-voice","slug":"/api-reference/scheduling/write-post-drafts-in-your-voice","pageMetadata":{"title":"Write post drafts in your voice","description":"Writes post drafts from a brief, in the account's own voice. Nothing\nis scheduled and nothing is stored: the response is text for you to\nreview and edit, then send to `POST /v1/scheduled-posts` to save a\ndraft or schedule it.\n\nEvery draft copies the SHAPE of a proven post, never its content.\nPass one in `mirror` (the text of a post from `GET /v1/inspiration`\nworks well), or leave `mirror` out and a proven shape is picked for\nyou, optionally biased toward a `collection`.\n\nVoice: `mine` (default) writes as the account in `account_id`, from\nthat account's own posts, style guide and rules (your main account\nwhen `account_id` is omitted), `creator` writes in a creator's style,\nand `hybrid` keeps the account's substance with the creator's flavor.\nThe creator's style guide is prepared in the\nbackground the first time you name them; that first call returns\n`409 creator_style_pending` and the retry a minute later succeeds.\n\nCosts AI credits per draft (drafts that fail are refunded), and a\ncall takes roughly 20 to 40 seconds. `Idempotency-Key` is NOT\nsupported: generation is not idempotent, and a replay would produce\ndifferent text anyway.\n","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/posts/draft","href":"/api-reference/scheduling/write-post-drafts-in-your-voice","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [\"Writes post drafts from a brief, in the account’s own voice. Nothing\\nis scheduled and nothing is stored: the response is text for you to\\nreview and edit, then send to \", _jsx(_components.code, {\n children: \"POST /v1/scheduled-posts\"\n }), \" to save a\\ndraft or schedule it.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Every draft copies the SHAPE of a proven post, never its content.\\nPass one in \", _jsx(_components.code, {\n children: \"mirror\"\n }), \" (the text of a post from \", _jsx(_components.code, {\n children: \"GET /v1/inspiration\"\n }), \"\\nworks well), or leave \", _jsx(_components.code, {\n children: \"mirror\"\n }), \" out and a proven shape is picked for\\nyou, optionally biased toward a \", _jsx(_components.code, {\n children: \"collection\"\n }), \".\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Voice: \", _jsx(_components.code, {\n children: \"mine\"\n }), \" (default) writes as the account in \", _jsx(_components.code, {\n children: \"account_id\"\n }), \", from\\nthat account’s own posts, style guide and rules (your main account\\nwhen \", _jsx(_components.code, {\n children: \"account_id\"\n }), \" is omitted), \", _jsx(_components.code, {\n children: \"creator\"\n }), \" writes in a creator’s style,\\nand \", _jsx(_components.code, {\n children: \"hybrid\"\n }), \" keeps the account’s substance with the creator’s flavor.\\nThe creator’s style guide is prepared in the\\nbackground the first time you name them; that first call returns\\n\", _jsx(_components.code, {\n children: \"409 creator_style_pending\"\n }), \" and the retry a minute later succeeds.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Costs AI credits per draft (drafts that fail are refunded), and a\\ncall takes roughly 20 to 40 seconds. \", _jsx(_components.code, {\n children: \"Idempotency-Key\"\n }), \" is NOT\\nsupported: generation is not idempotent, and a replay would produce\\ndifferent text anyway.\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Write post drafts in your voice","description":"Writes post drafts from a brief, in the account's own voice. Nothing\nis scheduled and nothing is stored: the response is text for you to\nreview and edit, then send to `POST /v1/scheduled-posts` to save a\ndraft or schedule it.\n\nEvery draft copies the SHAPE of a proven post, never its content.\nPass one in `mirror` (the text of a post from `GET /v1/inspiration`\nworks well), or leave `mirror` out and a proven shape is picked for\nyou, optionally biased toward a `collection`.\n\nVoice: `mine` (default) writes as the account in `account_id`, from\nthat account's own posts, style guide and rules (your main account\nwhen `account_id` is omitted), `creator` writes in a creator's style,\nand `hybrid` keeps the account's substance with the creator's flavor.\nThe creator's style guide is prepared in the\nbackground the first time you name them; that first call returns\n`409 creator_style_pending` and the retry a minute later succeeds.\n\nCosts AI credits per draft (drafts that fail are refunded), and a\ncall takes roughly 20 to 40 seconds. `Idempotency-Key` is NOT\nsupported: generation is not idempotent, and a replay would produce\ndifferent text anyway.\n","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/posts/draft","href":"/api-reference/scheduling/write-post-drafts-in-your-voice","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Scheduling"],"operationId":"draftPost","summary":"Write post drafts in your voice","description":"Writes post drafts from a brief, in the account's own voice. Nothing\nis scheduled and nothing is stored: the response is text for you to\nreview and edit, then send to `POST /v1/scheduled-posts` to save a\ndraft or schedule it.\n\nEvery draft copies the SHAPE of a proven post, never its content.\nPass one in `mirror` (the text of a post from `GET /v1/inspiration`\nworks well), or leave `mirror` out and a proven shape is picked for\nyou, optionally biased toward a `collection`.\n\nVoice: `mine` (default) writes as the account in `account_id`, from\nthat account's own posts, style guide and rules (your main account\nwhen `account_id` is omitted), `creator` writes in a creator's style,\nand `hybrid` keeps the account's substance with the creator's flavor.\nThe creator's style guide is prepared in the\nbackground the first time you name them; that first call returns\n`409 creator_style_pending` and the retry a minute later succeeds.\n\nCosts AI credits per draft (drafts that fail are refunded), and a\ncall takes roughly 20 to 40 seconds. `Idempotency-Key` is NOT\nsupported: generation is not idempotent, and a replay would produce\ndifferent text anyway.\n","requestBody":"610e71df-59e5-434a-a635-0a75b41a5bf5","responses":{"201":"ecc6df1b-f441-4b3d-b0ba-2c69f73f5005","400":"f9a3d71a-af5b-4dc6-8a88-1c3ff6d0f8d3","401":"02d6fb76-5a44-465a-b92d-5279cba94c59","403":"47756889-031e-49ff-a3bf-3fd3804ccc41","404":"b6649957-c14e-4122-bc09-7bf30e071164","409":"cb0774a9-b9f7-4e67-b42a-3dc8ce86971a","429":"371ca0bb-d3b8-4222-a822-5aa933f40f0b","500":"ceea0db1-2003-4670-863e-4c9fc753315e","502":"d85f8179-b88c-473b-98f1-387f18b710fd"},"method":"post","type":"path","servers":["3d538a38-214d-4480-97a3-9a44d5c3102b"],"security":["d3f7d345-7007-489f-b114-dac4df3cb92f"],"path":"/v1/posts/draft","baseUrlOptions":["https://api.superx.so"],"title":"Write post drafts in your voice","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["brief"],"properties":{"brief":{"type":"string","minLength":1,"maxLength":2000,"description":"What the post should say: the data, angle, or notes to write from.","isRequired":true,"uniqueKey":"brief","typeLabel":"string"},"count":{"type":"integer","minimum":1,"maximum":3,"default":1,"description":"How many drafts to write. Each one costs credits.","uniqueKey":"count","typeLabel":"integer"},"voice":{"type":"string","enum":["mine","creator","hybrid"],"default":"mine","description":"Whose voice to write in. `mine` is the voice of the account in `account_id`: its own posts, style guide and rules. Omit `account_id` and that is your main account.","uniqueKey":"voice","typeLabel":"enum\u003cstring>"},"creator":{"type":"string","description":"X handle to borrow style from, for example `@naval`. Required when `voice` is `creator` or `hybrid`, rejected when `voice` is `mine`.","uniqueKey":"creator","typeLabel":"string"},"mirror":{"type":"string","minLength":50,"maxLength":1500,"description":"Plain text of a proven post whose shape to copy. Only the form is reused, never the content. Pick a mirror with room for your data: a two-line aphorism squeezes the facts out. Omit to have a shape picked for you.","uniqueKey":"mirror","typeLabel":"string"},"collection":{"type":"string","description":"Format collection id to bias the picked shape toward, for example `numbered_list` or `contrarian_take`. Used only when `mirror` is omitted; an id that is unknown or not usable as a mirror fails with `400 invalid_collection`, which lists the ids that do work.","uniqueKey":"collection","typeLabel":"string"},"instructions":{"type":"string","maxLength":500,"description":"Extra style instructions for this batch.","uniqueKey":"instructions","typeLabel":"string"},"account_id":{"type":"string","description":"Any account you own, meaning your main account (the default when omitted) or one linked to it. With `voice: mine` the drafts use this account's own posts and style guide. An account shared with you returns `403 writes_main_account_only`.","uniqueKey":"account_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"simple":{"title":"simple","value":{"brief":"We cut churn from 6.2% to 3.8% by replacing the onboarding video with a 3-step checklist."}},"mirrored":{"title":"mirrored","value":{"brief":"We shipped a public API. 40 developers signed up in 48 hours.","count":3,"mirror":"Most people think they need more discipline.\n\nThey do not.\n\nThey need a smaller first step. Discipline is what you build after the habit already exists, not before."}},"creator_voice":{"title":"creator_voice","value":{"brief":"Removing our free plan tripled conversion.","voice":"hybrid","creator":"@naval"}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"ecc6df1b-f441-4b3d-b0ba-2c69f73f5005":{"description":"The generated drafts. Nothing was scheduled or stored.","headers":{"X-RateLimit-Limit":{"description":"The limit of the rate window closest to exhaustion.","schema":{"type":"integer"}},"X-RateLimit-Remaining":{"description":"Requests remaining in that window.","schema":{"type":"integer"}},"X-RateLimit-Reset":{"description":"Unix timestamp (seconds) when that window resets.","schema":{"type":"integer"}},"X-Credits-Charged":{"description":"AI credits kept for this call. Sent on every endpoint that settles its charge before answering, which is all of them except the ones that answer 202 and finish in the background.","schema":{"type":"integer"}},"X-Credits-Remaining":{"description":"AI credits left in the account's pool, bonus credits included.","schema":{"type":"integer"}},"X-Credits-Reset":{"description":"Unix timestamp (seconds) when the AI credit pool refills.","schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"drafts":{"type":"array","items":{"type":"object","properties":{"text":{"type":"string","description":"The draft post text. Send it to `POST /v1/scheduled-posts` when the user is happy with it.","uniqueKey":"data.drafts.items.[INDEX].text","typeLabel":"string"},"mirrored":{"oneOf":[{"type":"object","description":"Which proven shape this draft copied, or `null` when the draft copied no shape (no usable one was found and it was written from the brief alone).","properties":{"source":{"type":"string","enum":["you","collection"],"description":"`you` when you passed `mirror`, `collection` when a shape was picked for you.","uniqueKey":"data.drafts.items.[INDEX].mirrored.oneOf.0.source","typeLabel":"enum\u003cstring>"},"collection":{"type":"string","description":"Format collection the shape came from. Absent when `source` is `you`.","uniqueKey":"data.drafts.items.[INDEX].mirrored.oneOf.0.collection","typeLabel":"string"},"reference_id":{"type":"string","description":"Id of the post whose shape was copied. Absent when `source` is `you`.","uniqueKey":"data.drafts.items.[INDEX].mirrored.oneOf.0.reference_id","typeLabel":"string"}},"uniqueKey":"data.drafts.items.[INDEX].mirrored.oneOf.0","typeLabel":"object"},{"type":"null","description":"Which proven shape this draft copied, or `null` when the draft copied no shape (no usable one was found and it was written from the brief alone).","properties":{"source":{"type":"string","enum":["you","collection"],"description":"`you` when you passed `mirror`, `collection` when a shape was picked for you."},"collection":{"type":"string","description":"Format collection the shape came from. Absent when `source` is `you`."},"reference_id":{"type":"string","description":"Id of the post whose shape was copied. Absent when `source` is `you`."}},"uniqueKey":"data.drafts.items.[INDEX].mirrored.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.drafts.items.[INDEX].mirrored","typeLabel":"object | null"}},"uniqueKey":"data.drafts.items.[INDEX]","typeLabel":"object"},"uniqueKey":"data.drafts","typeLabel":"object[]"},"credits_charged":{"type":"integer","description":"AI credits kept for this call. Drafts that failed are refunded and are not counted here.","uniqueKey":"data.credits_charged","typeLabel":"integer"}},"uniqueKey":"data","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"data":{"drafts":[{"text":"Most founders think they need better retention strategies.\n\nThey do not.\n\nThey need simpler onboarding.","mirrored":{"source":"you"}}],"credits_charged":3}},"examples":{"Example":{"title":"Example","value":{"data":{"drafts":[{"text":"Most founders think they need better retention strategies.\n\nThey do not.\n\nThey need simpler onboarding.","mirrored":{"source":"you"}}],"credits_charged":3}}}},"exampleType":"examples"}},"exampleType":"examples"},"f9a3d71a-af5b-4dc6-8a88-1c3ff6d0f8d3":{"description":"Invalid or missing field (`invalid_parameter`), a `mirror` that cannot be used as a shape (`mirror_rejected`, with the reason), an unknown or unusable `collection` (`invalid_collection`), a `creator` SuperX has no posts for (`unknown_creator`), or a creator whose style guide could not be built at all (`creator_style_unavailable`, terminal: do not retry).","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","description":"Stable machine-readable error code.","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"retry_after":{"type":"integer","description":"Seconds to wait before retrying (rate-limit errors only).","uniqueKey":"error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":{"code":"mirror_rejected","message":"That post cannot be used as a mirror (url). Pass the plain text of a substantial post with no links and no engagement bait."}},"examples":{"Example":{"title":"Example","value":{"error":{"code":"mirror_rejected","message":"That post cannot be used as a mirror (url). Pass the plain text of a substantial post with no links and no engagement bait."}}}},"exampleType":"examples"}},"exampleType":"examples"},"02d6fb76-5a44-465a-b92d-5279cba94c59":{"description":"Missing/malformed Authorization header (`unauthorized`) or an unknown/revoked key (`invalid_api_key`).","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","description":"Stable machine-readable error code.","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"retry_after":{"type":"integer","description":"Seconds to wait before retrying (rate-limit errors only).","uniqueKey":"error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":{"code":"invalid_api_key","message":"Unknown or revoked API key"}},"examples":{"Example":{"title":"Example","value":{"error":{"code":"invalid_api_key","message":"Unknown or revoked API key"}}}},"exampleType":"examples"}},"exampleType":"examples"},"47756889-031e-49ff-a3bf-3fd3804ccc41":{"description":"Read-only key (`insufficient_scope`), an account shared with you (`writes_main_account_only`), or a lapsed subscription (legacy string envelope).","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","description":"Stable machine-readable error code.","isRequired":true,"uniqueKey":"oneOf.0.error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.message","typeLabel":"string"},"retry_after":{"type":"integer","description":"Seconds to wait before retrying (rate-limit errors only).","uniqueKey":"oneOf.0.error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"oneOf.0.error","typeLabel":"object"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"Legacy shape used ONLY by the shared subscription middleware: a plain\nstring `error` field. Seen on `403` when the subscription has lapsed\n(string starts with \"subscription_required:\") and on `500` when\nsubscription verification fails (string starts with \"internal_error:\").\n","required":["error"],"properties":{"error":{"type":"string","example":"subscription_required: The SuperX API requires an active subscription","isRequired":true,"uniqueKey":"oneOf.1.error","typeLabel":"string"}},"uniqueKey":"oneOf.1","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"example":{"error":{"code":"writes_main_account_only","message":"Accounts shared with you are read-only through the API. Drafting works on your own main and linked accounts."}},"examples":{"Example":{"title":"Example","value":{"error":{"code":"writes_main_account_only","message":"Accounts shared with you are read-only through the API. Drafting works on your own main and linked accounts."}}}},"exampleType":"examples"}},"exampleType":"examples"},"b6649957-c14e-4122-bc09-7bf30e071164":{"description":"account_id is not one of your accounts.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","description":"Stable machine-readable error code.","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"retry_after":{"type":"integer","description":"Seconds to wait before retrying (rate-limit errors only).","uniqueKey":"error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":{"code":"account_not_found","message":"No account with that id belongs to this key"}},"examples":{"Example":{"title":"Example","value":{"error":{"code":"account_not_found","message":"No account with that id belongs to this key"}}}},"exampleType":"examples"}},"exampleType":"examples"},"cb0774a9-b9f7-4e67-b42a-3dc8ce86971a":{"description":"The creator's style guide is being prepared (`creator_style_pending`). It is ready in about a minute; retry the same request.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","description":"Stable machine-readable error code.","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"retry_after":{"type":"integer","description":"Seconds to wait before retrying (rate-limit errors only).","uniqueKey":"error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":{"code":"creator_style_pending","message":"Style guide for @naval is being prepared, retry in about a minute."}},"examples":{"Example":{"title":"Example","value":{"error":{"code":"creator_style_pending","message":"Style guide for @naval is being prepared, retry in about a minute."}}}},"exampleType":"examples"}},"exampleType":"examples"},"371ca0bb-d3b8-4222-a822-5aa933f40f0b":{"description":"Rate limited (`rate_limited`, honor `Retry-After`), the AI credit pool is used up (`ai_credits_exhausted`, with the credit counters), or the plan's daily cap on drafting runs is spent (`ai_action_limited`, honor `Retry-After`). No plan caps drafting today; the shape is documented so a future cap cannot surprise a client.","headers":{"Retry-After":{"description":"Seconds to wait before retrying. Sent on every flavour of this 429.","schema":{"type":"integer"}},"X-Credits-Remaining":{"description":"Credits left in the pool. Sent only on `ai_credits_exhausted`, never on `rate_limited` or `ai_action_limited`, which do not consult the pool.","schema":{"type":"integer"}},"X-Credits-Reset":{"description":"Unix timestamp (seconds) when the pool refills. Sent only on `ai_credits_exhausted`, on the same terms as `X-Credits-Remaining`.","schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"oneOf":[{"type":"object","description":"The `429 ai_credits_exhausted` body: the standard envelope plus the\ncredit counters. Sent with a `Retry-After` header and the\n`X-Credits-Remaining` / `X-Credits-Reset` headers. `code` is stable;\nthe counters are additive fields, safe to ignore.\n","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["ai_credits_exhausted"],"isRequired":true,"uniqueKey":"oneOf.0.error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.message","typeLabel":"string"},"credits_required":{"type":"integer","description":"Credits the call needed.","uniqueKey":"oneOf.0.error.credits_required","typeLabel":"integer"},"credits_remaining":{"oneOf":[{"type":"integer","description":"Credits available when it was refused.","uniqueKey":"oneOf.0.error.credits_remaining.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Credits available when it was refused.","uniqueKey":"oneOf.0.error.credits_remaining.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.error.credits_remaining","typeLabel":"integer | null"},"reset_at":{"oneOf":[{"type":"integer","description":"Unix timestamp (seconds) when the pool refills.","uniqueKey":"oneOf.0.error.reset_at.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Unix timestamp (seconds) when the pool refills.","uniqueKey":"oneOf.0.error.reset_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.error.reset_at","typeLabel":"integer | null"}},"isRequired":true,"uniqueKey":"oneOf.0.error","typeLabel":"object"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"The `429 ai_action_limited` body: a per-day cap on how many times an\nexpensive action can run, counted separately from the credit pool and\nfrom the request rate limits. Sent with a `Retry-After` header. Caps\nreset at midnight UTC.\n\nRead `scope` before telling a user anything: `account` means the\nplan's own daily cap for that action, `platform` means the\nplatform-wide fair-use ceiling on live-data actions, which is shared\nwith every SuperX account. A `platform` refusal is not about this\naccount's quota, so wait and retry rather than reporting the account\nas out.\n","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["ai_action_limited"],"isRequired":true,"uniqueKey":"oneOf.1.error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.error.message","typeLabel":"string"},"scope":{"type":"string","enum":["account","platform"],"description":"Whose ceiling refused the call: this account's own per-day cap\nfor the action, or the platform-wide fair-use ceiling on\nlive-data actions.\n","uniqueKey":"oneOf.1.error.scope","typeLabel":"enum\u003cstring>"},"retry_after":{"type":"integer","description":"Seconds to wait before the cap resets.","uniqueKey":"oneOf.1.error.retry_after","typeLabel":"integer"},"reset_at":{"type":"integer","description":"Unix seconds when the cap resets (the next UTC midnight).","uniqueKey":"oneOf.1.error.reset_at","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"oneOf.1.error","typeLabel":"object"}},"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","description":"Stable machine-readable error code.","isRequired":true,"uniqueKey":"oneOf.2.error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.error.message","typeLabel":"string"},"retry_after":{"type":"integer","description":"Seconds to wait before retrying (rate-limit errors only).","uniqueKey":"oneOf.2.error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"oneOf.2.error","typeLabel":"object"}},"uniqueKey":"oneOf.2","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"example":{"error":{"code":"ai_credits_exhausted","message":"Not enough AI credits. Resets in 5 hours.","credits_required":9,"credits_remaining":2,"reset_at":1790812800}},"examples":{"Example":{"title":"Example","value":{"error":{"code":"ai_credits_exhausted","message":"Not enough AI credits. Resets in 5 hours.","credits_required":9,"credits_remaining":2,"reset_at":1790812800}}}},"exampleType":"examples"}},"exampleType":"examples"},"ceea0db1-2003-4670-863e-4c9fc753315e":{"description":"Unexpected server error. May also use the legacy string envelope when subscription verification fails.","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","description":"Stable machine-readable error code.","isRequired":true,"uniqueKey":"oneOf.0.error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.message","typeLabel":"string"},"retry_after":{"type":"integer","description":"Seconds to wait before retrying (rate-limit errors only).","uniqueKey":"oneOf.0.error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"oneOf.0.error","typeLabel":"object"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"Legacy shape used ONLY by the shared subscription middleware: a plain\nstring `error` field. Seen on `403` when the subscription has lapsed\n(string starts with \"subscription_required:\") and on `500` when\nsubscription verification fails (string starts with \"internal_error:\").\n","required":["error"],"properties":{"error":{"type":"string","example":"subscription_required: The SuperX API requires an active subscription","isRequired":true,"uniqueKey":"oneOf.1.error","typeLabel":"string"}},"uniqueKey":"oneOf.1","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"example":{"error":{"code":"internal_error","message":"Failed to fetch posts"}},"examples":{"Example":{"title":"Example","value":{"error":{"code":"internal_error","message":"Failed to fetch posts"}}}},"exampleType":"examples"}},"exampleType":"examples"},"d85f8179-b88c-473b-98f1-387f18b710fd":{"description":"Every draft failed to generate (`generation_failed`). All credits for the call were refunded.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","description":"Stable machine-readable error code.","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"retry_after":{"type":"integer","description":"Seconds to wait before retrying (rate-limit errors only).","uniqueKey":"error.retry_after","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":{"code":"generation_failed","message":"Drafting failed and no credits were spent. Try again shortly."}},"examples":{"Example":{"title":"Example","value":{"error":{"code":"generation_failed","message":"Drafting failed and no credits were spent. Try again shortly."}}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"d3f7d345-7007-489f-b114-dac4df3cb92f":{"apiKey":{"type":"http","scheme":"bearer","description":"A SuperX API key (\"sxk_...\"), created in the SuperX app under Account > API / MCP / CLI. Keys are server-side secrets.","scopes":[],"schemeName":"apiKey"}}},"servers":{"3d538a38-214d-4480-97a3-9a44d5c3102b":{"url":"https://api.superx.so"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"A SuperX API key (\"sxk_...\"), created in the SuperX app under Account > API / MCP / CLI. Keys are server-side secrets.","scopes":[],"schemeName":"apiKey"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"A SuperX API key (\"sxk_...\"), created in the SuperX app under Account > API / MCP / CLI. Keys are server-side secrets.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"apiKey","name":"Authorization"}],"title":"apiKey"}]},"originalFileLocation":"api-reference/openapi.yaml"},"subdomain":"superx","siteName":"SuperX","title":"Write post drafts in your voice - SuperX","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-07T18:31:24.617Z","originalFileLocation":"api-reference/scheduling/write-post-drafts-in-your-voice.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Writes post drafts from a brief, in the account\u0026#x27;s own voice. Nothing is scheduled and nothing is stored: the response is text for you to review and edit, then send to POST /v1/scheduled-posts to save a draft or schedule it. Every draft copies the SHAPE of a proven post, never its content. Pass one in mirror (the text of a post from GET /v1/inspiration works well), or leave mirror out and a proven shape is picked for you, optionally biased toward a collection. Voice: mine (default) writes as the account in account_id, from that account\u0026#x27;s own posts, style guide and rules (your main account when account_id is omitted), creator writes in a creator\u0026#x27;s style, and hybrid keeps the account\u0026#x27;s substance with the creator\u0026#x27;s flavor. The creator\u0026#x27;s style guide is prepared in the background the first time you name them; that first call returns 409 creator_style_pending and the retry a minute later succeeds. Costs AI credits per draft (drafts that fail are refunded), and a call takes roughly 20 to 40 seconds. Idempotency-Key is NOT supported: generation is not idempotent, and a replay would produce different text anyway.\">\u003cmeta data-mint-head name=\"application-name\" content=\"SuperX\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/superx/Ohz_C_TMxE84ikvK/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/superx/Ohz_C_TMxE84ikvK/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/superx/Ohz_C_TMxE84ikvK/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/superx/Ohz_C_TMxE84ikvK/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/superx/Ohz_C_TMxE84ikvK/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/superx/Ohz_C_TMxE84ikvK/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/superx/Ohz_C_TMxE84ikvK/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/superx/Ohz_C_TMxE84ikvK/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/superx/Ohz_C_TMxE84ikvK/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Write post drafts in your voice - SuperX\">\u003cmeta data-mint-head property=\"og:description\" content=\"Writes post drafts from a brief, in the account\u0026#x27;s own voice. Nothing is scheduled and nothing is stored: the response is text for you to review and edit, then send to POST /v1/scheduled-posts to save a draft or schedule it. Every draft copies the SHAPE of a proven post, never its content. Pass one in mirror (the text of a post from GET /v1/inspiration works well), or leave mirror out and a proven shape is picked for you, optionally biased toward a collection. Voice: mine (default) writes as the account in account_id, from that account\u0026#x27;s own posts, style guide and rules (your main account when account_id is omitted), creator writes in a creator\u0026#x27;s style, and hybrid keeps the account\u0026#x27;s substance with the creator\u0026#x27;s flavor. The creator\u0026#x27;s style guide is prepared in the background the first time you name them; that first call returns 409 creator_style_pending and the retry a minute later succeeds. Costs AI credits per draft (drafts that fail are refunded), and a call takes roughly 20 to 40 seconds. Idempotency-Key is NOT supported: generation is not idempotent, and a replay would produce different text anyway.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"SuperX\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.superx.so/api-reference/scheduling/write-post-drafts-in-your-voice\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://superx.mintlify.app/_mintlify/api/og/v2?division=Scheduling\u0026amp;title=Write+post+drafts+in+your+voice\u0026amp;description=Writes+post+drafts+from+a+brief%2C+in+the+account%27s+own+voice.+Nothing%0Ais+scheduled+and+nothing+is+stored%3A+the+response+is+text+for+you+to%0Areview+and+edit%2C+then+s\u0026amp;theme=4e9a0bdaa172d4dfc537fe9f\u0026amp;signature=cba6e1ca8dfb6060db9a3c3ad114edb897d3b4ff8b2e0d42700c5ff8692c9cd4\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Write post drafts in your voice - SuperX\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Writes post drafts from a brief, in the account\u0026#x27;s own voice. Nothing is scheduled and nothing is stored: the response is text for you to review and edit, then send to POST /v1/scheduled-posts to save a draft or schedule it. Every draft copies the SHAPE of a proven post, never its content. Pass one in mirror (the text of a post from GET /v1/inspiration works well), or leave mirror out and a proven shape is picked for you, optionally biased toward a collection. Voice: mine (default) writes as the account in account_id, from that account\u0026#x27;s own posts, style guide and rules (your main account when account_id is omitted), creator writes in a creator\u0026#x27;s style, and hybrid keeps the account\u0026#x27;s substance with the creator\u0026#x27;s flavor. The creator\u0026#x27;s style guide is prepared in the background the first time you name them; that first call returns 409 creator_style_pending and the retry a minute later succeeds. Costs AI credits per draft (drafts that fail are refunded), and a call takes roughly 20 to 40 seconds. Idempotency-Key is NOT supported: generation is not idempotent, and a replay would produce different text anyway.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://superx.mintlify.app/_mintlify/api/og/v2?division=Scheduling\u0026amp;title=Write+post+drafts+in+your+voice\u0026amp;description=Writes+post+drafts+from+a+brief%2C+in+the+account%27s+own+voice.+Nothing%0Ais+scheduled+and+nothing+is+stored%3A+the+response+is+text+for+you+to%0Areview+and+edit%2C+then+s\u0026amp;theme=4e9a0bdaa172d4dfc537fe9f\u0026amp;signature=cba6e1ca8dfb6060db9a3c3ad114edb897d3b4ff8b2e0d42700c5ff8692c9cd4\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/superx/Ohz_C_TMxE84ikvK/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"SuperX\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#F4503B\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.superx.so/api-reference/scheduling/write-post-drafts-in-your-voice\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/scheduling/write-post-drafts-in-your-voice.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.superx.so/#organization\",\"name\":\"SuperX\",\"url\":\"https://docs.superx.so\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/superx/ZOrKRYsYXbBhitoI/logo/light.svg?fit=max\u0026auto=format\u0026n=ZOrKRYsYXbBhitoI\u0026q=85\u0026s=d465c38938c34f6ab75cfc50d0039be2\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.superx.so#website\",\"name\":\"SuperX\",\"url\":\"https://docs.superx.so\",\"publisher\":{\"@id\":\"https://docs.superx.so/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.superx.so/api-reference/scheduling/write-post-drafts-in-your-voice#webpage\",\"url\":\"https://docs.superx.so/api-reference/scheduling/write-post-drafts-in-your-voice\",\"name\":\"Write post drafts in your voice\",\"description\":\"Writes post drafts from a brief, in the account's own voice. Nothing is scheduled and nothing is stored: the response is text for you to review and edit, then send to POST /v1/scheduled-posts to save a draft or schedule it. Every draft copies the SHAPE of a proven post, never its content. Pass one in mirror (the text of a post from GET /v1/inspiration works well), or leave mirror out and a proven shape is picked for you, optionally biased toward a collection. Voice: mine (default) writes as the account in account_id, from that account's own posts, style guide and rules (your main account when account_id is omitted), creator writes in a creator's style, and hybrid keeps the account's substance with the creator's flavor. The creator's style guide is prepared in the background the first time you name them; that first call returns 409 creator_style_pending and the retry a minute later succeeds. Costs AI credits per draft (drafts that fail are refunded), and a call takes roughly 20 to 40 seconds. Idempotency-Key is NOT supported: generation is not idempotent, and a replay would produce different text anyway.\",\"dateModified\":\"2026-10-07T18:31:24.617Z\",\"isPartOf\":{\"@id\":\"https://docs.superx.so#website\"},\"breadcrumb\":{\"@id\":\"https://docs.superx.so/api-reference/scheduling/write-post-drafts-in-your-voice#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.superx.so/api-reference/scheduling/write-post-drafts-in-your-voice#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"SuperX\",\"item\":\"https://docs.superx.so\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Write post drafts in your voice\",\"item\":\"https://docs.superx.so/api-reference/scheduling/write-post-drafts-in-your-voice\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.superx.so/api-reference/scheduling/write-post-drafts-in-your-voice#apireference\",\"headline\":\"Write post drafts in your voice\",\"name\":\"Write post drafts in your voice\",\"description\":\"Writes post drafts from a brief, in the account's own voice. Nothing is scheduled and nothing is stored: the response is text for you to review and edit, then send to POST /v1/scheduled-posts to save a draft or schedule it. Every draft copies the SHAPE of a proven post, never its content. Pass one in mirror (the text of a post from GET /v1/inspiration works well), or leave mirror out and a proven shape is picked for you, optionally biased toward a collection. Voice: mine (default) writes as the account in account_id, from that account's own posts, style guide and rules (your main account when account_id is omitted), creator writes in a creator's style, and hybrid keeps the account's substance with the creator's flavor. The creator's style guide is prepared in the background the first time you name them; that first call returns 409 creator_style_pending and the retry a minute later succeeds. Costs AI credits per draft (drafts that fail are refunded), and a call takes roughly 20 to 40 seconds. Idempotency-Key is NOT supported: generation is not idempotent, and a replay would produce different text anyway.\",\"url\":\"https://docs.superx.so/api-reference/scheduling/write-post-drafts-in-your-voice\",\"mainEntityOfPage\":{\"@id\":\"https://docs.superx.so/api-reference/scheduling/write-post-drafts-in-your-voice#webpage\"},\"dateModified\":\"2026-10-07T18:31:24.617Z\",\"publisher\":{\"@id\":\"https://docs.superx.so/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.superx.so#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"SuperX\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"SuperX","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/introduction"}]},{"tab":"API Reference","groups":[{"group":"Identity","pages":[{"title":"Get the key owner","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/me","href":"/api-reference/identity/get-the-key-owner"},{"title":"List your accounts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/accounts","href":"/api-reference/identity/list-your-accounts"}]},{"group":"Content","pages":[{"title":"List published posts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/posts","href":"/api-reference/content/list-published-posts"},{"title":"List replies you sent","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/replies","href":"/api-reference/content/list-replies-you-sent"}]},{"group":"Analytics","pages":[{"title":"Get analytics","description":"Totals and a per-day series (posts, engagement, impressions, follower\nsamples) for the selected account. Totals and series cover the\naccount's own posts: original posts plus thread continuations, which\nare replies to the account's own posts. Replies to other accounts and\nreposts are counted separately as replies_sent and reposts_sent, and\nevery engagement figure is what the counted posts received. Default\nrange is the last 30 days; the maximum range is 366 days.\n","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/posts/analytics","href":"/api-reference/analytics/get-analytics"}]},{"group":"Scheduling","pages":[{"title":"Write post drafts in your voice","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/posts/draft","href":"/api-reference/scheduling/write-post-drafts-in-your-voice"},{"title":"Rewrite a post in your voice","description":"Rewrites a post in the account's own voice, as close to or as far from\nthe original as you ask. `closeness: 0` keeps only the idea,\n`closeness: 100` stays very close to the original wording.\n\nThis is the same engine as the app composer's Remix button, so a\nscript and the app produce the same kind of output.\n\nNothing is posted, scheduled or stored: the response is TEXT for a\nperson to review, then send to `POST /v1/posts/draft` or\n`POST /v1/scheduled-posts`.\n\nCosts AI credits, measured from the models' real cost and typically 2.\nSpends no live-data allowance. Needs a key with the `write` scope.\n","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/posts/remix","href":"/api-reference/scheduling/rewrite-a-post-in-your-voice"},{"title":"List drafts and scheduled posts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/scheduled-posts","href":"/api-reference/scheduling/list-drafts-and-scheduled-posts"},{"title":"Create a draft or scheduled post, or publish now","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/scheduled-posts","href":"/api-reference/scheduling/create-a-draft-or-scheduled-post-or-publish-now"},{"title":"Retime queued posts in bulk","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/scheduled-posts/bulk/retime","href":"/api-reference/scheduling/retime-queued-posts-in-bulk"},{"title":"Enable auto retweet on queued posts in bulk","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/scheduled-posts/bulk/auto-retweet","href":"/api-reference/scheduling/enable-auto-retweet-on-queued-posts-in-bulk"},{"title":"Delete queued posts in bulk","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/scheduled-posts/bulk/delete","href":"/api-reference/scheduling/delete-queued-posts-in-bulk"},{"title":"Delete a draft or scheduled post","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/scheduled-posts/{id}","href":"/api-reference/scheduling/delete-a-draft-or-scheduled-post"},{"title":"Edit a draft or scheduled post","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/scheduled-posts/{id}","href":"/api-reference/scheduling/edit-a-draft-or-scheduled-post"},{"title":"List plug templates","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/plug-templates","href":"/api-reference/scheduling/list-plug-templates"}]},{"group":"Tools","pages":[{"title":"Edit one selected piece of a post","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tools/inline-edit","href":"/api-reference/tools/edit-one-selected-piece-of-a-post"},{"title":"Rewrite a post one preset way","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tools/rephrase","href":"/api-reference/tools/rewrite-a-post-one-preset-way"},{"title":"Check a statement against a web search","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tools/factcheck","href":"/api-reference/tools/check-a-statement-against-a-web-search"},{"title":"Score a draft against this account's own posts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/posts/viral-score","href":"/api-reference/tools/score-a-draft-against-this-accounts-own-posts"},{"title":"Sort recent posts on a topic into Read, Pass or Not sure","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/posts/triage","href":"/api-reference/tools/sort-recent-posts-on-a-topic-into-read-pass-or-not-sure"}]},{"group":"Audience","pages":[{"title":"List replies you received","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/replies/received","href":"/api-reference/audience/list-replies-you-received"},{"title":"Read an audience list","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/audience/{kind}","href":"/api-reference/audience/read-an-audience-list"},{"title":"List engaged contacts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/contacts","href":"/api-reference/audience/list-engaged-contacts"},{"title":"Get one contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/contacts/{id}","href":"/api-reference/audience/get-one-contact"},{"title":"List one contact's replies to you","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/contacts/{id}/replies","href":"/api-reference/audience/list-one-contacts-replies-to-you"},{"title":"List notes on a contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/contacts/{id}/notes","href":"/api-reference/audience/list-notes-on-a-contact"},{"title":"Add a note to a contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/contacts/{id}/notes","href":"/api-reference/audience/add-a-note-to-a-contact"},{"title":"Delete a note on a contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/contacts/{id}/notes/{noteId}","href":"/api-reference/audience/delete-a-note-on-a-contact"},{"title":"Edit a note on a contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/contacts/{id}/notes/{noteId}","href":"/api-reference/audience/edit-a-note-on-a-contact"}]},{"group":"Inspiration","pages":[{"title":"Search the inspiration library","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/inspiration","href":"/api-reference/inspiration/search-the-inspiration-library"},{"title":"Search the inspiration media index","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/inspiration/media","href":"/api-reference/inspiration/search-the-inspiration-media-index"}]},{"group":"Contact Lists","pages":[{"title":"List contact lists","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/contact-lists","href":"/api-reference/contact-lists/list-contact-lists"},{"title":"Create a contact list","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/contact-lists","href":"/api-reference/contact-lists/create-a-contact-list"},{"title":"Delete a contact list","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/contact-lists/{id}","href":"/api-reference/contact-lists/delete-a-contact-list"},{"title":"Rename a contact list","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/contact-lists/{id}","href":"/api-reference/contact-lists/rename-a-contact-list"},{"title":"List contact list members","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/contact-lists/{id}/members","href":"/api-reference/contact-lists/list-contact-list-members"},{"title":"Add a contact list member","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/contact-lists/{id}/members","href":"/api-reference/contact-lists/add-a-contact-list-member"},{"title":"Remove a contact list member","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/contact-lists/{id}/members/{memberId}","href":"/api-reference/contact-lists/remove-a-contact-list-member"},{"title":"Add contact list members in bulk","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/contact-lists/{id}/members/bulk","href":"/api-reference/contact-lists/add-contact-list-members-in-bulk"},{"title":"Remove contact list members in bulk","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/contact-lists/{id}/members/bulk-delete","href":"/api-reference/contact-lists/remove-contact-list-members-in-bulk"}]},{"group":"Signals","pages":[{"title":"List signal agents","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/signals/agents","href":"/api-reference/signals/list-signal-agents"},{"title":"Create a signal agent","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/signals/agents","href":"/api-reference/signals/create-a-signal-agent"},{"title":"Delete a signal agent","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/signals/agents/{id}","href":"/api-reference/signals/delete-a-signal-agent"},{"title":"Update a signal agent","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/signals/agents/{id}","href":"/api-reference/signals/update-a-signal-agent"},{"title":"Add a signal to an agent","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/signals/agents/{id}/signals","href":"/api-reference/signals/add-a-signal-to-an-agent"},{"title":"Remove a signal from an agent","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/signals/agents/{id}/signals/{signalId}","href":"/api-reference/signals/remove-a-signal-from-an-agent"},{"title":"Set feedback on a lead","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/signals/leads/{id}/feedback","href":"/api-reference/signals/set-feedback-on-a-lead"},{"title":"Search for leads on X now","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/signals/leads/search","href":"/api-reference/signals/search-for-leads-on-x-now"},{"title":"List signal leads","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/signals/leads","href":"/api-reference/signals/list-signal-leads"},{"title":"Suggest keyword watches","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/signals/keywords/suggest","href":"/api-reference/signals/suggest-keyword-watches"},{"title":"Expand an audience description into a rubric","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/signals/icp/expand","href":"/api-reference/signals/expand-an-audience-description-into-a-rubric"},{"title":"Build an audience profile from a website","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/signals/icp/expand-from-url","href":"/api-reference/signals/build-an-audience-profile-from-a-website"}]},{"group":"Engage","pages":[{"title":"List Engage feeds","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/engage/feeds","href":"/api-reference/engage/list-engage-feeds"},{"title":"Create an Engage feed","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/engage/feeds","href":"/api-reference/engage/create-an-engage-feed"},{"title":"Delete an Engage feed","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/engage/feeds/{id}","href":"/api-reference/engage/delete-an-engage-feed"},{"title":"Update an Engage feed","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/engage/feeds/{id}","href":"/api-reference/engage/update-an-engage-feed"},{"title":"Get posts from an Engage feed","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/engage/feeds/{id}/posts","href":"/api-reference/engage/get-posts-from-an-engage-feed"},{"title":"Get mentions of the account","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/engage/mentions","href":"/api-reference/engage/get-mentions-of-the-account"},{"title":"Draft one reply to a post","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/engage/reply-draft","href":"/api-reference/engage/draft-one-reply-to-a-post"}]},{"group":"Media","pages":[{"title":"Presign an image upload","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/media","href":"/api-reference/media/presign-an-image-upload"}]},{"group":"Workers","pages":[{"title":"List Workers","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/workers","href":"/api-reference/workers/list-workers"},{"title":"List Worker suggestions","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/workers/suggestions","href":"/api-reference/workers/list-worker-suggestions"},{"title":"Save a suggestion as a draft","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/workers/suggestions/{id}/draft","href":"/api-reference/workers/save-a-suggestion-as-a-draft"},{"title":"Schedule a suggestion","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/workers/suggestions/{id}/schedule","href":"/api-reference/workers/schedule-a-suggestion"},{"title":"Dismiss a suggestion","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/workers/suggestions/{id}/dismiss","href":"/api-reference/workers/dismiss-a-suggestion"}]},{"group":"Context","pages":[{"title":"Get context settings","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/context","href":"/api-reference/context/get-context-settings"},{"title":"Update context settings","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/context","href":"/api-reference/context/update-context-settings"},{"title":"Replace the product list","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml put /v1/context/products","href":"/api-reference/context/replace-the-product-list"},{"title":"Remove one product","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/context/products/{id}","href":"/api-reference/context/remove-one-product"},{"title":"Add or edit one product","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/context/products/{id}","href":"/api-reference/context/add-or-edit-one-product"},{"title":"Rebuild the generated style guide","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/context/style-guide/regenerate","href":"/api-reference/context/rebuild-the-generated-style-guide"},{"title":"Refresh a product from its page","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/context/products/{id}/scrape","href":"/api-reference/context/refresh-a-product-from-its-page"}]},{"group":"DMs","pages":[{"title":"Queue a DM campaign","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/dm/campaigns","href":"/api-reference/dms/queue-a-dm-campaign"},{"title":"Read one DM campaign","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/dm/campaigns/{id}","href":"/api-reference/dms/read-one-dm-campaign"},{"title":"Cancel a campaign's unsent messages","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/dm/campaigns/{id}","href":"/api-reference/dms/cancel-a-campaigns-unsent-messages"},{"title":"List the DM queue","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/dm/queue","href":"/api-reference/dms/list-the-dm-queue"},{"title":"DM allowances and usage","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/dm/limits","href":"/api-reference/dms/dm-allowances-and-usage"}]},{"group":"Queue","pages":[{"title":"Get queue settings","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/queue-settings","href":"/api-reference/queue/get-queue-settings"},{"title":"Update queue settings","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/queue-settings","href":"/api-reference/queue/update-queue-settings"}]},{"group":"Tags","pages":[{"title":"List tags","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/tags","href":"/api-reference/tags/list-tags"},{"title":"Create a tag","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/tags","href":"/api-reference/tags/create-a-tag"},{"title":"Delete a tag","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/tags/{id}","href":"/api-reference/tags/delete-a-tag"},{"title":"Rename or recolor a tag","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/tags/{id}","href":"/api-reference/tags/rename-or-recolor-a-tag"}]},{"group":"Articles","pages":[{"title":"List articles","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/articles","href":"/api-reference/articles/list-articles"},{"title":"Create an article draft","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/articles","href":"/api-reference/articles/create-an-article-draft"},{"title":"Get an article","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/articles/{id}","href":"/api-reference/articles/get-an-article"},{"title":"Delete an article","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/articles/{id}","href":"/api-reference/articles/delete-an-article"},{"title":"Edit an article","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/articles/{id}","href":"/api-reference/articles/edit-an-article"},{"title":"Publish an article to X now","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/articles/{id}/publish","href":"/api-reference/articles/publish-an-article-to-x-now"},{"title":"Schedule or reschedule an article","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/articles/{id}/schedule","href":"/api-reference/articles/schedule-or-reschedule-an-article"},{"title":"Unschedule an article","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/articles/{id}/unschedule","href":"/api-reference/articles/unschedule-an-article"},{"title":"Generate an AI cover image","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/articles/{id}/cover","href":"/api-reference/articles/generate-an-ai-cover-image"},{"title":"List saved cover styles","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/cover-styles","href":"/api-reference/articles/list-saved-cover-styles"}]},{"group":"Datasets","pages":[{"title":"List datasets","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/datasets","href":"/api-reference/datasets/list-datasets"},{"title":"Collect an audience into a dataset","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/datasets","href":"/api-reference/datasets/collect-an-audience-into-a-dataset"},{"title":"Get a dataset","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/datasets/{id}","href":"/api-reference/datasets/get-a-dataset"},{"title":"Get dataset rows","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/datasets/{id}/rows","href":"/api-reference/datasets/get-dataset-rows"},{"title":"Export a dataset as CSV","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/datasets/{id}/export","href":"/api-reference/datasets/export-a-dataset-as-csv"},{"title":"Add a dataset's people to a contact list","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/datasets/{id}/contacts","href":"/api-reference/datasets/add-a-datasets-people-to-a-contact-list"},{"title":"Draft outreach messages onto a research dataset","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/datasets/{id}/outreach-drafts","href":"/api-reference/datasets/draft-outreach-messages-onto-a-research-dataset"},{"title":"Refine a dataset by what each person wrote","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/datasets/{id}/refine","href":"/api-reference/datasets/refine-a-dataset-by-what-each-person-wrote"}]},{"group":"X Lookups","pages":[{"title":"Look up one public post live","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/x/posts/{id}","href":"/api-reference/x-lookups/look-up-one-public-post-live"},{"title":"Top replies to a public post","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/x/posts/{id}/replies","href":"/api-reference/x-lookups/top-replies-to-a-public-post"},{"title":"Look up one public profile live","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/x/users/{handle}","href":"/api-reference/x-lookups/look-up-one-public-profile-live"},{"title":"Latest posts of a public account","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/x/users/{handle}/posts","href":"/api-reference/x-lookups/latest-posts-of-a-public-account"}]},{"group":"Meta","pages":[{"title":"Machine-readable quickstart","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/docs","href":"/api-reference/meta/machine-readable-quickstart"}]}]}]},"basePath":"","title":"Write post drafts in your voice - SuperX","buildId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","deploymentId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DX1Meug0.js","utils-B_OMIQVC.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-ChxhRPMa.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-CuKvD8Iv.js","snippetPresets-C5d7p2hp.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CfHcE8m4.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C1zZV314.js","shallow-CmQhqCJn.js","getApiPlaygroundDisplay-YRo9s1O7.js","CodeSnippet-RN1MTdfk.js","CodeSnippets-DKLPHxJA.js","Page-BAvA99GL.js","getPastedJson-bz0M41mU.js","icon-CsmhpPrv.js","MethodPill-CNGsVE77.js","DuplicateIcon-DilfU_Z2.js","createIcon-BdsYzQck.js","DynamicMarkdown-CbqEDjbV.js","SectionHeading-O6hXpFCN.js","axios-vUo_bRtp.js","Markdown-nKm-uidQ.js","clsx-ClVdStUn.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CIQkMg3R.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-ImrFS4Fy.js"]}