Skip to main content
Developer Friendly

myJotup API

Create notes programmatically with a simple REST endpoint. No API key required.

Endpoint

POSThttps://myjotup.com/api/notes

Send a POST request with a JSON body to create a new note. The response includes the note ID, public URL, and expiration timestamp.

Request & Response

Request Body

json
{
  "content": "Hello from the API!",
  "type": "markdown",
  "password": "optional-secret",
  "expiresInHours": 24
}

Response (201)

json
{
  "id": "abc12",
  "url": "https://myjotup.com/abc12",
  "expiresAt": "2026-05-15T12:00:00.000Z"
}

Parameters

FieldTypeRequiredDescription
contentstringRequiredThe note content. Max 100,000 characters.
typestringOptionalNote type: plain, markdown, or richText. Defaults to plain.
passwordstringOptionalPassword to protect the note. Max 72 characters.
expiresInHoursnumberOptionalExpiration time. Allowed values: 1, 24, 168 (7 days), 720 (30 days). Defaults to 24.

Code Examples

cURL

bash
curl -X POST https://myjotup.com/api/notes \
  -H "Content-Type: application/json" \
  -d '{"content": "Hello from curl!"}'

JavaScript

javascript
const response = await fetch('https://myjotup.com/api/notes', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({
    content: 'Hello from JavaScript!',
    type: 'plain',
    expiresInHours: 24
  })
});

const data = await response.json();
console.log(data.url); // https://myjotup.com/abc12

Python

python
import requests

response = requests.post(
    "https://myjotup.com/api/notes",
    json={
        "content": "Hello from Python!",
        "type": "markdown",
        "expiresInHours": 7 * 24
    }
)

data = response.json()
print(data["url"])  # https://myjotup.com/abc12

Rate Limits

20 notes / hour

Per IP address

CORS enabled

Use from any origin

If you exceed the rate limit, the API returns 429 Too Many Requests with a retry hint.

Error Codes

StatusMeaning
400Invalid request — missing content, invalid type, or invalid JSON.
429Rate limit exceeded. Slow down and retry later.
500Internal server error. Please try again.
503Database connection failed.