L’API
Un jeton, trois portées et douze points d’accès, pour qu’un raccourci ou un script accède à vos notes.
Un jeton d’API permet à un raccourci sur votre téléphone, à un script ou à une application sur un autre ordinateur d’accéder à vos notes sans se connecter. Créez-en un dans Paramètres → Jetons d’API.
Portées
| Portée | Ce qu’elle permet |
|---|---|
capture |
Créer des notes, avec leur contenu. Elle ne peut en relire aucune |
read |
Lister, lire et rechercher des notes. Elle ne peut rien modifier |
full |
Lire, rechercher, créer, modifier et organiser les dossiers |
capture et read ne sont pas incluses l’une dans l’autre. Un raccourci
qui envoie vos idées dans une boîte de réception n’a aucune raison de lire tout
ce que vous avez écrit : si vous perdez le téléphone, un jeton capture
ne permet de rien lire.
Authentification
Envoyez le jeton dans un en-tête Bearer :
curl -H "Authorization: Bearer scr_..." https://app.scratchpad.sh/api/notes
Points d’accès
Seuls ces points d’accès acceptent un jeton. Un jeton ne peut donc jamais créer ni révoquer un autre jeton, ni modifier votre compte.
| Méthode | Chemin | Portée | Rôle |
|---|---|---|---|
GET |
/api/notes |
read |
Le résumé de chaque note, ainsi que les dossiers |
POST |
/api/notes |
capture |
Crée une note ; text ou markdown, et folderId, tous facultatifs |
GET |
/api/notes/:id |
read |
Une note, avec le JSON de son document |
GET |
/api/notes/:id/export?format=md |
read |
Une note en Markdown, en texte brut ou en JSON |
PATCH |
/api/notes/:id |
full |
Modifie : doc ou markdown, ainsi que title, folderId, pinned |
POST |
/api/notes/:id/append |
full |
Ajoute à la fin, sans toucher au contenu existant |
GET |
/api/search?q= |
read |
Recherche en texte intégral dans vos notes |
GET |
/api/notes/:id/attachments |
read |
Les fichiers d’une note, et le texte de l’un d’eux : ?file= avec ?q= pour y chercher, ou ?from= et ?to= pour une plage de pages |
GET |
/api/folders |
read |
Tous les dossiers, avec parent_id renseigné pour les sous-dossiers |
POST |
/api/folders |
full |
Crée un dossier : name, et parentId pour le placer dans un autre |
PATCH |
/api/folders |
full |
Renomme avec id et name, ou déplace avec parentId et order : la liste ordonnée de tous les dossiers qui doivent se trouver dans parentId |
DELETE |
/api/folders |
full |
Supprime : id. Avec un jeton, uniquement un dossier vide |
Pour ranger une note dans un dossier, envoyez PATCH /api/notes/:id avec
folderId, ou null pour la sortir de son dossier.
Avec un jeton, seul un dossier vide peut être supprimé. Si le dossier contient
encore des notes ou des sous-dossiers, la requête renvoie une erreur 409 qui
indique son contenu. Dans l’application, la suppression demande une
confirmation et peut être annulée : elle n’a donc pas cette restriction.
Texte ou Markdown
Partout où vous envoyez du contenu, vous pouvez utiliser text ou markdown,
mais pas les deux.
text est du texte brut : un paragraphe par ligne, et une ligne qui
commence par # reste une ligne qui commence par #. C’est ce qu’il faut pour
un raccourci ou une règle de messagerie, qui capturent des mots sans les mettre
en forme.
markdown est interprété : les titres, les listes, les listes de tâches,
les tableaux et les blocs de code arrivent tels quels. C’est ce qu’il faut pour
un assistant. Ce que l’éditeur ne sait pas afficher est converti en texte
simple au lieu d’être refusé.
C’est la même chose en lecture. GET /api/notes/:id renvoie le JSON du
document, qui est exact mais demande d’en comprendre la structure.
GET /api/notes/:id/export renvoie du Markdown : c’est le plus pratique
pour lire le texte.
Ajouter à la fin d’une note
Utilisez POST /api/notes/:id/append au lieu de lire une note, d’y ajouter une
ligne et de tout renvoyer avec PATCH : ce qui aurait été saisi dans
l’application entre votre lecture et votre écriture serait écrasé. L’ajout
complète la note telle qu’elle est à cet instant.
curl -X POST https://app.scratchpad.sh/api/notes/NOTE_ID/append \
-H "Authorization: Bearer scr_..." \
-H "Content-Type: application/json" \
-d '{"markdown": "- [ ] ring the dentist"}'
Une note complètement vide est remplacée au lieu d’être complétée, pour que la première ligne devienne bien le titre. Une note qui contient déjà du texte garde toutes ses lignes vides exactement là où vous les avez laissées.
Mis à jour le 21 septembre 2026