> ## Documentation Index
> Fetch the complete documentation index at: https://docs.corgea.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Obtenir les détections d’une analyse

> Récupère une liste de détections pour une analyse spécifique. Par défaut, les résultats sont triés par date de création, du plus récent au plus ancien, puis par identifiant de détection en cas d’égalité pour garantir une pagination stable.

Également servi sous `/api/v1/scan/{scan_id}/issues`, l’ancien nom de cet endpoint, qui reste pris en charge avec les mêmes paramètres et la même réponse.



## OpenAPI

````yaml /fr/api-reference/openapi.json get /scan/{scan_id}/detections
openapi: 3.0.0
info:
  title: API Corgea
  version: 1.0.0
  description: >-
    API permettant d’interagir avec les fonctionnalités d’analyse et de gestion
    des vulnérabilités de Corgea
servers:
  - url: https://www.corgea.app/api/v1
    description: Serveur de production
  - url: https://eu.corgea.app/api/v1
    description: Serveur de production UE
security:
  - CorgeaToken: []
  - BearerAuth: []
paths:
  /scan/{scan_id}/detections:
    get:
      tags:
        - Détections
      summary: Obtenir les détections d’une analyse
      description: >-
        Récupère une liste de détections pour une analyse spécifique. Par
        défaut, les résultats sont triés par date de création, du plus récent au
        plus ancien, puis par identifiant de détection en cas d’égalité pour
        garantir une pagination stable.


        Également servi sous `/api/v1/scan/{scan_id}/issues`, l’ancien nom de
        cet endpoint, qui reste pris en charge avec les mêmes paramètres et la
        même réponse.
      operationId: getScanIssues
      parameters:
        - name: scan_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: L'identifiant de l'analyse
        - name: page
          in: query
          required: false
          schema:
            type: integer
            default: 1
          description: Le numéro de page pour la pagination
        - name: page_size
          in: query
          required: false
          schema:
            type: integer
            default: 20
            maximum: 50
          description: Le nombre de résultats par page
        - name: urgency
          in: query
          required: false
          schema:
            type: string
          description: "Filtrer par niveaux d'urgence (séparés par des virgules). Valeurs valides\_: CR, HI, ME, LO"
          example: CR,HI
        - name: status
          in: query
          required: false
          schema:
            type: string
          description: "Filtrer par statut (séparés par des virgules). Valeurs valides\_: fixed, false_positive, accepted_risk, open, fix_in_progress, duplicate"
          example: open,fix_in_progress
        - name: show_false_positives
          in: query
          required: false
          schema:
            type: boolean
            default: false
          description: >-
            Inclure les problèmes marqués comme faux positifs (manuellement ou
            par l’IA). Par défaut, les faux positifs sont exclus.
          example: true
        - name: include_reachability
          in: query
          required: false
          schema:
            type: boolean
            default: false
          description: >-
            Inclure un résumé de l’accessibilité des points de terminaison pour
            chaque problème.
        - name: language
          in: query
          required: false
          schema:
            type: string
          description: Filtrer par langage de programmation (insensible à la casse)
          example: python
        - name: file_path
          in: query
          required: false
          schema:
            type: string
          description: Filtrer par chemin de fichier (correspondance partielle)
          example: src/auth
        - name: classification
          in: query
          required: false
          schema:
            type: string
          description: >-
            Filtrer par classification (correspondance partielle) ou identifiant
            CWE. La correspondance CWE ignore les zéros initiaux et compare
            l’identifiant complet : CWE-79 correspond à CWE-079, mais pas à
            CWE-798.
          example: CWE-89
        - name: file_path_exact
          in: query
          required: false
          schema:
            type: string
          description: >-
            Filtrer par chemin de fichier exact. Contrairement à file_path, ce
            filtre ne renvoie pas les chemins qui contiennent seulement la
            valeur, ce qui permet d’explorer sans risque un groupe de fichiers
            renvoyé par le point de terminaison des groupes.
          example: src/api/auth.py
        - name: search
          in: query
          required: false
          schema:
            type: string
          description: >-
            Recherche en texte libre dans la classification et le chemin de
            fichier
          example: sql injection
        - name: cwe
          in: query
          required: false
          schema:
            type: string
          description: >-
            Filtrer par un ou plusieurs identifiants CWE (séparés par des
            virgules), avec la même correspondance que classification. Utilisez
            ce paramètre pour explorer un groupe CWE renvoyé par le point de
            terminaison des groupes.
          example: CWE-79,CWE-89
        - name: sla_status
          in: query
          required: false
          schema:
            type: string
          description: "Filtrer par statut SLA (séparés par des virgules). Valeurs valides\_: overdue, escalated"
          example: overdue
        - name: sort_by
          in: query
          required: false
          schema:
            type: string
            enum:
              - created_at
              - '-created_at'
              - urgency
              - '-urgency'
              - status
              - '-status'
              - classification
              - '-classification'
          description: >-
            Trier les résultats par champ (préfixer par « - » pour un ordre
            décroissant). L’identifiant de problème départage les résultats en
            cas d’égalité de tri.
          example: '-created_at'
      responses:
        '200':
          description: Problèmes récupérés avec succès
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: ok
                  page:
                    type: integer
                  total_pages:
                    type: integer
                  total_issues:
                    type: integer
                  issues:
                    type: array
                    items:
                      $ref: '#/components/schemas/Issue'
        '403':
          description: Autorisation refusée
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    example: Permission denied
        '404':
          description: >-
            Analyse introuvable ou, lorsque le contrôle d’accès aux projets est
            activé, l’appelant n’est pas administrateur de l’entreprise et n’a
            pas accès au projet de l’analyse.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: error
                  message:
                    type: string
                    example: Scan not found
components:
  schemas:
    Issue:
      type: object
      properties:
        finding_id:
          type: string
          format: uuid
          nullable: true
          description: >-
            Identifiant du finding dont ce problème est une détection :
            identique d’un scan à l’autre. Null pour un problème ingéré avant
            l’apparition des findings.
        id:
          type: string
          format: uuid
        classification:
          type: object
          nullable: true
          description: >-
            Si le CWE est inconnu ou si la classification est un libellé libre,
            id et name contiennent le libellé de classification d’origine et
            description vaut null. Une classification vide est renvoyée sous la
            forme null.
          properties:
            id:
              type: string
              example: CWE-123
            name:
              type: string
              example: Vulnerability Name
            description:
              type: string
              nullable: true
        urgency:
          type: string
          enum:
            - CR
            - HI
            - ME
            - LO
          description: >-
            Code d’urgence : CR (critique), HI (élevée), ME (moyenne) ou LO
            (faible).
        created_at:
          type: string
          format: date-time
        first_detection_date:
          type: string
          format: date-time
          description: >-
            Date à laquelle Corgea a détecté ce problème pour la première fois,
            parmi toutes les analyses où il apparaît. Identique à created_at
            lorsqu’il s’agit de la première détection.
        status:
          type: string
          nullable: true
          enum:
            - open
            - fix_in_progress
            - fixed
            - false_positive
            - accepted_risk
            - duplicate
        sla_status:
          type: string
          nullable: true
          enum:
            - overdue
            - escalated
          description: >-
            État de dépassement du SLA. null lorsque le problème n’est ni en
            retard ni escaladé.
        location:
          $ref: '#/components/schemas/IssueLocation'
        auto_triage:
          $ref: '#/components/schemas/AutoTriage'
        auto_fix_suggestion:
          $ref: '#/components/schemas/AutoFixSuggestion'
        assigned_to:
          $ref: '#/components/schemas/AssignedTo'
        reachability:
          $ref: '#/components/schemas/IssueReachabilitySummary'
    IssueLocation:
      type: object
      properties:
        file:
          type: object
          properties:
            name:
              type: string
            language:
              type: string
            path:
              type: string
            git_hash:
              type: string
              nullable: true
              description: >-
                Hash Git enregistré pour le fichier analysé. Renvoyé uniquement
                par les points de terminaison qui listent les problèmes.
        project:
          type: object
          properties:
            name:
              type: string
            branch:
              type: string
            git_sha:
              type: string
        line_number:
          type: integer
        sink_line_number:
          type: integer
          nullable: true
          description: >-
            Ligne du point de sortie (sink) du flux de données lorsqu’il se
            trouve dans ce fichier, sinon null. Renvoyé uniquement lors de la
            récupération d’un problème individuel.
    AutoTriage:
      type: object
      properties:
        false_positive_detection:
          type: object
          properties:
            status:
              type: string
              enum:
                - valid
                - false_positive
                - pending
            reasoning:
              description: >-
                Motif du classement comme faux positif, si disponible, même si
                aucun correctif n’a été généré.
              type: string
              nullable: true
    AutoFixSuggestion:
      type: object
      properties:
        id:
          type: string
          format: uuid
        status:
          type: string
          enum:
            - fix_available
            - no_fix
            - generating
            - false_positive
            - on_hold
            - unsupported
            - plan
          description: >-
            Disponibilité actuelle du correctif. La consultation d’un problème
            lance par défaut la génération en arrière-plan d’un correctif
            manquant admissible. Pendant cette génération, le statut est
            generating ; consultez à nouveau le problème jusqu’à la fin de la
            génération. Si la génération est désactivée ou qu’aucun correctif
            n’est produit, le statut est no_fix.
        patch:
          type: object
          properties:
            diff:
              type: string
              description: >-
                Correctif au format diff unifié. Renvoie une chaîne vide lorsque
                le correctif ne contient aucun diff.
            explanation:
              type: string
              description: >-
                Explication de la façon dont le correctif corrige la
                vulnérabilité
            full_code:
              type: string
              description: >-
                Code source complet du fichier avec le correctif appliqué.
                Renvoyé uniquement lorsque show_full_code vaut true et qu’un
                correctif existe.
    AssignedTo:
      type: object
      nullable: true
      description: >-
        Utilisateur affecté au problème, ou null lorsque le problème n'est pas
        attribué.
      properties:
        id:
          type: string
          description: ID de l’utilisateur assigné.
        email:
          type: string
          format: email
          description: Adresse e-mail de l’utilisateur assigné.
        name:
          type: string
          nullable: true
          description: >-
            Nom d’affichage de l’utilisateur assigné, ou null s’il est
            indisponible.
    IssueReachabilitySummary:
      type: object
      description: >-
        Résumé de l’accessibilité du point de terminaison renvoyé lorsque
        include_reachability est true.
      properties:
        is_reachable:
          type: boolean
        endpoint_count:
          type: integer
  securitySchemes:
    CorgeaToken:
      type: apiKey
      in: header
      name: CORGEA-TOKEN
      description: >-
        Clé API pour l'authentification Les jetons API des utilisateurs inactifs
        sont refusés.
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Jeton d’accès OAuth2 (JWT) dans l’en-tête Authorization

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.