API REST

Documentation de l'API

API REST simple et puissante : authentification Bearer, format JSON, webhooks à la consultation. Intégrez le partage sécurisé dans vos pipelines DevOps.

Bien démarrer

URL de base & format

L'API REST de Seecret.it permet d'intégrer toutes les fonctionnalités dans vos outils internes, scripts automatiques, CRM ou applications métier.

POST https://seecret.it/api
Content-Type: application/x-www-form-urlencoded
Sécurité

Authentification

Chaque requête doit contenir un en-tête Authorization avec un token Bearer UUID associé à votre compte abonné.

Authorization: Bearer VOTRE_TOKEN_UUID

Sécurité du token

Ne jamais exposer votre token dans un dépôt public (GitHub, GitLab…) ou une documentation non protégée. En cas de fuite, régénérez-le immédiatement depuis votre dashboard.

Format des réponses (JSON)

  • CODE : 200 = succès, 400/401/403 = erreur
  • MESSAGE : description du résultat
  • data : payload de la réponse
Référence

Opérations disponibles

6 endpoints REST pour créer, modifier, consulter et supprimer vos secrets.

create_seecret — Créer un secret

ParamètreTypeRequisDescription
operationstringcreate_seecret
langstringLangue : fr, en, es, ru
seecretstringContenu du secret
expiration_dateYYYY-MM-DDExpiration (défaut : +7 jours, max +60)
number_viewintNombre de consultations (défaut : 1)
view_notification0 ou 1Notification email à la lecture
passwordstringMot de passe additionnel
notestringNote interne (créateur uniquement)
domainstringDomaine personnalisé (URL branding)
recipient_emailstringEnvoi auto du lien par email
country_block[]arrayCodes pays ISO à bloquer
split_linkintPartage fractionné (1 à 10)
split_link_requiredintNombre de clés requises

Exemple PHP + cURL

$ch = curl_init("https://seecret.it/api");
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Authorization: Bearer VOTRE_TOKEN_UUID',
    'Content-Type: application/x-www-form-urlencoded'
]);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query([
    'operation'         => 'create_seecret',
    'lang'              => 'fr',
    'seecret'           => 'Mot de passe SSH : s3cr3t!',
    'expiration_date'   => date('Y-m-d', strtotime('+7 days')),
    'number_view'       => 1,
    'view_notification' => 1,
    'note'              => 'Accès serveur prod',
    'recipient_email'   => '[email protected]',
]));
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
echo $response['data']['url'];

Réponse

{
    "CODE": 200,
    "MESSAGE": "Secret created successfully",
    "data": {
        "id": "aB3kZ9",
        "url": "https://seecret.it/_aB3kZ9#clé_de_déchiffrement",
        "url_short": "http://s.seecret.it/clé",
        "expires_at": 1748649600000,
        "split_urls": null
    }
}

update_seecret — Modifier un secret

Modifie un secret existant. Doit appartenir à votre compte, ne pas être expiré, et la clé de déchiffrement (cle) est nécessaire.

ParamètreTypeRequisDescription
operationstringupdate_seecret
idstringIdentifiant du secret
clestringClé de déchiffrement (fragment #)
seecretstringNouveau contenu
langstringLangue
expiration_dateYYYY-MM-DDNouvelle date d'expiration
number_viewintNouveau nombre de vues
view_notification0 ou 1Notification à la lecture
passwordstringNouveau mot de passe additionnel
delete_password1Supprimer le mot de passe existant
notestringNote interne
recipient_emailstringNouveau destinataire
country_block[]arrayCodes pays à bloquer

Exemple

curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query([
    'operation' => 'update_seecret',
    'id'        => 'aB3kZ9',
    'cle'       => 'clé_de_déchiffrement',
    'lang'      => 'fr',
    'seecret'   => 'Nouveau mot de passe : N0uv3auMDP!',
]));

get_seecret — Obtenir les infos d'un secret

Retourne les métadonnées complètes : statut, journal de consultations, fichiers associés. Le contenu chiffré n'est pas renvoyé.

ParamètreTypeRequisDescription
operationstringget_seecret
idstringIdentifiant du secret

Réponse

{
    "CODE": 200,
    "data": {
        "id": "aB3kZ9",
        "status": "pending",
        "url": "https://seecret.it/_aB3kZ9#clé",
        "expiration_date": "2026-06-01",
        "created_at": "2026-05-25 10:30:00",
        "views_count": 0,
        "views_max": 1,
        "views_log": [],
        "has_password": false,
        "view_notification": true,
        "note": "Accès serveur prod",
        "recipient_email": "[email protected]",
        "country_block": [],
        "split_link": 1,
        "files": []
    }
}

Valeurs de status : pending (jamais consulté), viewed (vu), expired (expiré).

list_seecrets — Lister vos secrets

Retourne la liste paginée avec filtres optionnels par statut ou recherche.

ParamètreTypeRequisDescription
operationstringlist_seecrets
pageintNuméro de page (défaut : 1)
limitintRésultats / page, max 100 (défaut : 20)
searchstringRecherche ID, note, noms de fichiers
statusstringpending, viewed, expired ou vide

Réponse

{
    "CODE": 200,
    "data": {
        "total": 42,
        "page": 1,
        "limit": 20,
        "pages": 3,
        "secrets": [ { ... } ]
    }
}

delete_seecret — Supprimer un secret

Révoque immédiatement un secret et supprime tous les fichiers associés. Irréversible.

ParamètreTypeRequisDescription
operationstringdelete_seecret
idstringIdentifiant du secret

Réponse

{
    "CODE": 200,
    "MESSAGE": "Secret deleted successfully"
}

get_account — Informations du compte

Retourne les infos du compte : abonnement, stockage, domaines, statistiques.

Réponse

{
    "CODE": 200,
    "data": {
        "email": "[email protected]",
        "subscription_active": true,
        "subscription_expires_at": "2026-05-25 00:00:00",
        "api_token": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "storage_used_bytes": 10485760,
        "storage_quota_bytes": 524288000,
        "domains": [
            { "domain": "seecret.it", "url": "https://seecret.it/" },
            { "id": "12", "domain": "secret.monentreprise.com" }
        ],
        "stats": { "total": 42, "pending": 15, "viewed": 20, "expired": 7 }
    }
}
Conformité

Sécurité & conformité

L'API repose sur une architecture sécurisée et respecte les recommandations de l'ANSSI et de la CNIL. Toutes les données sont chiffrées et hébergées en France. Aucun secret n'est lisible après destruction.

  • Chiffrement AES-256 zero-knowledge
  • Hébergement souverain français
  • Conformité RGPD
  • Audit trail complet via webhooks
Écosystème

Intégrations possibles

L'API s'intègre facilement dans tous vos outils :

  • Systèmes de ticketing (Jira, GLPI, Zendesk)
  • Plateformes DevOps (GitLab CI, GitHub Actions, Jenkins)
  • CRM ou ERP internes
  • Scripts d'automatisation (Python, Bash, PHP, Node.js)
  • Applications nécessitant un partage temporaire d'accès

Exemple Python

import requests

resp = requests.post(
    "https://seecret.it/api",
    headers={"Authorization": "Bearer VOTRE_TOKEN_UUID"},
    data={
        "operation":   "create_seecret",
        "lang":        "fr",
        "seecret":     "Mot de passe VPN : s3cr3t!",
        "number_view": 1,
    }
)
print(resp.json()["data"]["url"])

Prêt à intégrer l'API Seecret.it ?

Plan Pro à 2 €/mois — API illimitée, support email, webhooks signés.

Obtenir mon token API