API

Check or Humanize. Separately.

Chrome is one client. The same endpoints work if you only want the scanner, only the humanizer, or both in your own app.

POST /v1/check

Score a draft: slop, hit, quality, risk. Returns Send, Fix, or Don’t. Longer drafts need a signed-in account and burn tokens.

  • Header X-Device-Id
  • Optional Authorization: Bearer … for linked accounts
{
  "draft": "Your post text…"
}
POST /v1/humanize

Rewrite launch-copy into something that still sounds like you. Same headers. Same draft field. No new facts. Pass "mode": "takes" when the draft is not slop but the hook is weak: three options, ranked, you get the winner.

  • Keeps names, numbers, and list items
  • Cuts filler. Never invents thanks, counts, or hype
  • Optional mode: "takes" for ranked alternatives
{
  "draft": "Excited to announce…",
  "mode": "takes"
}
POST /v1/waitlist

Join the list. Chrome Web Store when it ships, or say you want the API or another room. No device id. No auth.

  • Base https://api.maybesend.com
  • want: chrome, api, reddit, linkedin, feature
  • Optional message if feature or you need something specific
{
  "email": "[email protected]",
  "want": ["api"],
  "message": "Check from our scheduler."
}
TIP Use what you need

Wire Check alone into a pipeline. Call Humanize when slop is high, or takes when the hook is weak. Caps and rate limits apply per device and per IP. Keys never ship in the client.

  • Base URL from your Options / account settings
  • Local default http://127.0.0.1:8790
  • Humanize tells inspired by blader/humanizer