Terminal workflow

CLI

Create, share, and fetch JotSpot notes from your terminal.

Account required 10 creates per hour Admins unlimited Legacy token edits still work

POST /api/v1/jots/text requires an authenticated account, creates a draft jot with a short slug, and is limited to 10 creates per hour per account. Admin accounts are exempt.

Quickstart

Post without ceremony

Use an API key for scripted work. Browser session cookies are fine for local manual testing.

Create with an API key

Best default for shell scripts, automation, and editor integrations.

curl -H "Authorization: Bearer <api_key>" -X POST https://jotspot.io/api/v1/jots/text --data-binary @notes.md

Create with a session

Useful when you already have an authenticated browser session and want a fast manual post from the same machine.

curl -b cookies.txt -c cookies.txt -X POST https://jotspot.io/api/v1/jots/text -d "Hello world"

Draft by default. Add ?visibility=public to publish immediately.

Create from stdin

Pipe output straight in when you are turning existing files or shell output into a jot.

cat README.md | curl -H "Authorization: Bearer <api_key>" -X POST https://jotspot.io/api/v1/jots/text --data-binary @-

Preserve terminal output

Set ?render=text when the page should show raw output instead of rendering Markdown.

uptime | curl -H "Authorization: Bearer <api_key>" -X POST "https://jotspot.io/api/v1/jots/text?render=text" --data-binary @-

Plain text response mode

Keep the response machine-friendly when all you want back is the jot URL.

curl -s -H "Authorization: Bearer <api_key>" -X POST "https://jotspot.io/api/v1/jots/text?format=text" -d "Hello"
curl -s -H "Authorization: Bearer <api_key>" -X POST "https://jotspot.io/api/v1/jots/text?format=text&render=text" --data-binary @-

?format=text changes the API response format only. Add &render=text if you also want the jot page to default to text.

Editing

Update existing jots

Account-owned jots can be edited over bearer auth. Existing token-owned jots can still be updated with their private manage token.

Edit as an authenticated user

Use this for jots that belong to your account.

curl -H "Authorization: Bearer <api_key>" -X PATCH "https://jotspot.io/api/v1/jots/abc123/text" --data-binary @notes.md

Edit with a manage token

Legacy token-based edits still work if you kept the private manage URL or token.

curl -X PATCH "https://jotspot.io/api/v1/jots/abc123/text?token=<owner_token>" --data-binary @notes.md

Add &visibility=public to publish, or &visibility=draft to unpublish.

Edit title, description, and tags

These endpoints accept raw values, which makes them easy to drive from shell scripts.

curl -X PATCH "https://jotspot.io/api/v1/jots/abc123/title?token=<owner_token>" -d "New title"
curl -X PATCH "https://jotspot.io/api/v1/jots/abc123/desc?token=<owner_token>" --data-binary "Short summary"
curl -X PATCH "https://jotspot.io/api/v1/jots/abc123/tags?token=<owner_token>" -d "cli,notes,python"

Reading

Fetch the raw note or its metadata

Use the raw routes for scripts, or hit the field endpoints when you only need one value.

Fetch raw text

Works for direct text downloads or tools that just need the jot body.

curl https://jotspot.io/j/abc123.txt
curl https://jotspot.io/j/abc123.md
curl -H "Accept: text/plain" https://jotspot.io/j/abc123

Fetch title, description, and tags

Grab only the field you need without parsing the full page.

curl https://jotspot.io/api/v1/jots/abc123/title
curl https://jotspot.io/api/v1/jots/abc123/desc
curl https://jotspot.io/api/v1/jots/abc123/tags