Marquer un problème
Marque un problème comme faux positif ou risque accepté, ou le rouvre. La raison s'affiche dans l'app avec le nom de ta clé.
Permission OAuth : issues:write · une clé d'API les a toutes
Un faux positif sort du score ; un risque accepté y reste. Pour un problème corrigé, ne le marque pas : revérifie-le, Rustine le fermera.
Paramètres de chemin
issue_idstringobligatoireLe problème.
Corps de la requête
statusstringobligatoirefalse_positive(sort du score),accepted_risk(reste dans le score) ouopenpour annuler.openfalse_positiveaccepted_riskreasonstringoptionnelPourquoi, avec ce que tu as vérifié (fichier, ligne, raison), de 10 à 500 caractères. Obligatoire pour
false_positiveetaccepted_risk; affichée dans l'app avec le nom de ta clé.
Réponse
idstringL'identifiant du problème ; il le garde d'un scan à l'autre.
objectstringLe type d'objet, toujours le même pour une route donnée.
project_idstringLe projet du problème.
target_idstringLe site ou le dépôt où il a été trouvé.
addressstringLe nom d'hôte du site ou
propriétaire/dépôt.control_idstringLe contrôle qui l'a trouvé (identifiant stable).
familystringLa famille du contrôle : base de données, secrets, fichiers exposés…
databasesecretsexposedFilespersonalDatavulnerableVersionsconfigurationcomplianceservercodeseveritystringLa gravité, de
criticalàinfo.criticalhighmediumlowinfoconfidencestringÀ quel point Rustine est sûr :
confirmed(vu),likely(très probable),estimated(déduit, par exemple d'une version).confirmedlikelyestimatedstatusstringopen;fixed(un scan ou une revérification ne le trouve plus) ;false_positive(sorti du score) ;accepted_risk(reste dans le score).openfixedfalse_positiveaccepted_risktitlestringLe problème en une ligne, dans la langue du propriétaire de la clé.
explanationstringLe risque en mots simples, dans la langue du propriétaire de la clé.
detailstringLe détail technique, dans la langue du propriétaire de la clé.
locationstringOù : un chemin, une table, ou
fichier:ligne@commitdans un dépôt.filestring | nullProblème de dépôt : le fichier.
lineinteger | nullProblème de dépôt : la ligne.
commitstring | nullProblème de dépôt : le commit analysé.
evidencestringCe que le contrôle a observé, secrets masqués.
fix_unlockedbooleanVrai si son correctif est débloqué : le relire ne coûte rien.
status_reasonstring | nullPourquoi il a été marqué faux positif ou risque accepté.
marked_bystring | nullQui l'a marqué : un agent, le nom d'une clé d'API, ou
app.first_seen_atstringLe premier scan qui l'a trouvé.
last_seen_atstringLe dernier scan qui l'a trouvé.
fixed_atstring | nullQuand il a été trouvé corrigé.
Erreurs
| Code | error.code | Ce qui se passe |
|---|---|---|
| 400 | body_invalid | Le corps de la requête n'est pas du JSON valable. Vérifie l'en-tête Content-Type: application/json. |
| 400 | parameter_invalid | Un paramètre manque ou n'est pas valable ; param le nomme. |
| 400 | reason_required | Marquer un faux positif ou un risque accepté demande une raison, de 10 à 500 caractères. |
| 401 | authentication_required | Aucune clé dans la requête. Passe-la dans l'en-tête Authorization: Bearer rst_…, jamais dans l'adresse. |
| 401 | invalid_api_key | La clé ou le jeton OAuth est faux, révoqué ou expiré. Vérifie qu'il est copié en entier, ou crée une nouvelle clé. |
| 402 | api_plan_required | L'espace est sur l'offre Gratuite. L'API vient avec Pro, ou à l'essai 14 jours sur Solo. |
| 402 | api_trial_ended | L'essai de 14 jours de Solo est terminé. Passe à Pro : tes clés remarchent aussitôt. |
| 403 | scope_missing | Le jeton OAuth n'a pas la permission que demande cette route (indiquée sur sa page). Reconnecte l'agent pour l'accorder. Une clé d'API a toutes les permissions. |
| 404 | resource_not_found | Rien avec cet identifiant dans l'espace de la clé. Un objet d'un autre espace répond pareil : son existence n'est jamais révélée. |
| 409 | issue_already_fixed | Le problème est corrigé : il n'y a rien à marquer. |
| 409 | proof_required | Le site doit d'abord être prouvé comme le tien (audit complet, correctif, marquage). Prouve-le dans l'app : DNS, fichier ou balise meta. |
| 429 | rate_limited | Trop de requêtes pour cette clé (120 par minute). Attends Retry-After secondes. |
| 500 | internal_error | Une erreur de notre côté, signalée automatiquement. Réessaie plus tard ; donne le Request-Id au support si elle revient. |
| 503 | service_unavailable | Rustine est indisponible un instant. Réessaie avec la même Idempotency-Key. |