Skip to content
Docs

Reply to a post

Early access. Tell us what you're building and we'll set you up. Contact us

POSTapi.lempile.com/posts/{post_id}/comments

Replies under an X post (or under a reply, with comment_id) from the account's own X. If the post was edited, the reply goes under its latest version. Paced like posts; answer: true replies to someone who answered the account have their own 200 a day.

Scope: accounts.write.

Authentication

X-API-KEY header·A Lempile API key, made in the dashboard under Access tokens.

Path parameters

  • post_idstringrequired

    The post to reply under.

Headers

  • Idempotency-Keystringrequired

    1–200 characters of A-Z a-z 0-9 . _ : -. The same key with the same request replays the first answer; see Write receipts.

    ≤ 200 chars

Request body

  • account_idstringrequired
  • textstringrequired
    ≤ 1250 chars
  • comment_idstring

    A reply's id (digits, as a string): the reply goes under it instead.

    Pattern^[0-9]+$
  • answerboolean

    This answers someone who replied to the account: counts toward the separate 200-a-day cap.

  • navigationstring

    timeline finds the post in the account's Following feed first, as a person scrolling would, then falls back to its page; direct opens the post's page. Default: the post's page.

    One oftimelinedirect
  • author_handlestring

    The post author's X handle, which timeline looks for in the feed.

    ≤ 15 chars

Responses

201

Replied.

›

application/json

  • objectany
    AlwaysCommentSent
  • providerany
    AlwaysX
  • comment_idstring | null

    null when X gave no link; the reply still went out.

  • viastring
    One oftimelinedirect
  • edited_fromstring

    When the post was edited: the id the reply was asked for.

400

Missing or invalid parameters or Idempotency-Key.

›

application/problem+json

  • typestringrequired
  • titlestring
  • statusintegerrequired
  • detailstring
  • retry_atstring · date-time
  • codestring

    The browser's own reason, when it refused before the click: replies_limited, post_not_accepted, gif_not_found, browser_busy…

401

Missing or invalid API key ({error, message}), errors/disconnected_account, or errors/reauth_required when X is signed out in the account's browser.

›

application/problem+json

  • typestringrequired
  • titlestring
  • statusintegerrequired
  • detailstring
  • retry_atstring · date-time
  • codestring

    The browser's own reason, when it refused before the click: replies_limited, post_not_accepted, gif_not_found, browser_busy…

402

subscription_required: the workspace has no active trial or subscription.

›

application/problem+json

  • typestringrequired
  • titlestring
  • statusintegerrequired
  • detailstring
  • retry_atstring · date-time
  • codestring

    The browser's own reason, when it refused before the click: replies_limited, post_not_accepted, gif_not_found, browser_busy…

404

errors/resource_not_found: no such account in this workspace, or it isn't an X account.

›

application/problem+json

  • typestringrequired
  • titlestring
  • statusintegerrequired
  • detailstring
  • retry_atstring · date-time
  • codestring

    The browser's own reason, when it refused before the click: replies_limited, post_not_accepted, gif_not_found, browser_busy…

409

errors/in_progress or errors/account_busy.

›

application/problem+json

  • typestringrequired
  • titlestring
  • statusintegerrequired
  • detailstring
  • retry_atstring · date-time
  • codestring

    The browser's own reason, when it refused before the click: replies_limited, post_not_accepted, gif_not_found, browser_busy…

422

errors/not_sent (the browser stopped before Reply; code says why, e.g. replies_limited when the author limits who can reply), errors/reply_button_disabled, errors/idempotency_key_reused, errors/x_app_not_loaded, proxy errors.

›

application/problem+json

  • typestringrequired
  • titlestring
  • statusintegerrequired
  • detailstring
  • retry_atstring · date-time
  • codestring

    The browser's own reason, when it refused before the click: replies_limited, post_not_accepted, gif_not_found, browser_busy…

423

errors/x_account_locked: X shows the account its lock page (x.com/account/access). Nothing was done; someone has to pass X's check.

›

application/problem+json

  • typestringrequired
  • titlestring
  • statusintegerrequired
  • detailstring
  • retry_atstring · date-time
  • codestring

    The browser's own reason, when it refused before the click: replies_limited, post_not_accepted, gif_not_found, browser_busy…

429

errors/too_fast, errors/daily_limit, errors/answers_daily_limit or errors/browser_busy, with retry_at.

›

application/problem+json

  • typestringrequired
  • titlestring
  • statusintegerrequired
  • detailstring
  • retry_atstring · date-time
  • codestring

    The browser's own reason, when it refused before the click: replies_limited, post_not_accepted, gif_not_found, browser_busy…

503

errors/service_unavailable (the account isn't ready, or the browser runner can't be reached), errors/no_client_session, or errors/maintenance with retry_at.

›

application/problem+json

  • typestringrequired
  • titlestring
  • statusintegerrequired
  • detailstring
  • retry_atstring · date-time
  • codestring

    The browser's own reason, when it refused before the click: replies_limited, post_not_accepted, gif_not_found, browser_busy…

504

errors/timeout: Reply was pressed but X didn't confirm. Read the receipt.

›

application/problem+json

  • typestringrequired
  • titlestring
  • statusintegerrequired
  • detailstring
  • retry_atstring · date-time
  • codestring

    The browser's own reason, when it refused before the click: replies_limited, post_not_accepted, gif_not_found, browser_busy…

Was this page helpful?