API REST pour le partage de secrets chiffrés
Crée et récupère des secrets chiffrés et autodestructeurs par programmation.
Cette API stocke du texte chiffré pré-chiffré. Le chiffrement doit avoir lieu côté client avant l'appel à l'API. Le serveur ne voit jamais le texte en clair.
Pour la plupart des cas d'usage, la CLI ou la GitHub Action gèrent le chiffrement automatiquement.
URL de base
https://www.vaulted.fyi/apiStocke du texte chiffré avec les métadonnées d'expiration et de limite de consultations. Renvoie un ID de secret.
Corps de la requête
| Champ | Type | Requis | Valeurs |
|---|---|---|---|
| ciphertext | string | oui | max. 4096 caractères |
| iv | string | oui | vecteur d'initialisation |
| maxViews | number | oui | 0, 1, 3, 5, 10 (0 = illimité, renvoie -1 pour viewsRemaining) |
| ttl | number | oui | 3600, 7200, 21600, 43200, 86400, 259200, 604800, 1209600, 2592000 (secondes) |
| hasPassphrase | boolean | non | false par défaut |
curl -X POST https://www.vaulted.fyi/api/secrets \
-H "Content-Type: application/json" \
-d '{
"ciphertext": "encrypted-base64-data",
"iv": "initialization-vector",
"maxViews": 1,
"ttl": 86400,
"hasPassphrase": false
}'{ "id": "abc123" }Réponses d'erreur
| Statut | Description |
|---|---|
| 400 | Erreur de validation (champs manquants ou invalides) |
| 429 | Limite de débit dépassée |
| 500 | Erreur serveur interne |
Récupère le texte chiffré et consomme une consultation. Le secret est supprimé lorsque toutes les consultations sont consommées.
Chaque requête consomme une consultation. Utilise l'endpoint de statut pour vérifier sans consommer.
curl https://www.vaulted.fyi/api/secrets/abc123{
"ciphertext": "encrypted-base64-data",
"iv": "initialization-vector",
"hasPassphrase": false,
"viewsRemaining": 2
}viewsRemaining vaut -1 pour les secrets à consultations illimitées (maxViews = 0).
Réponses d'erreur
| Statut | Description |
|---|---|
| 404 | Secret introuvable ou expiré |
| 429 | Limite de débit dépassée |
| 500 | Erreur serveur interne |
Vérifie si un secret existe et combien de consultations restent sans consommer de consultation.
curl https://www.vaulted.fyi/api/secrets/abc123/status{
"exists": true,
"viewsRemaining": 3,
"hasPassphrase": false
}viewsRemaining vaut -1 pour les secrets à consultations illimitées (maxViews = 0).
Réponses d'erreur
| Statut | Description |
|---|---|
| 404 | Secret introuvable ou expiré |
| 500 | Erreur serveur interne |
Limites de débit
| Endpoint | Limite | Fenêtre |
|---|---|---|
| POST /api/secrets | 20 requêtes | 10 minutes |
| GET /api/secrets/[id] | 60 requêtes | 10 minutes |
Les limites de débit s'appliquent par adresse IP. Tout dépassement renvoie 429.