# Obtenir des retours (/fr/api/analytics/feedback)

<!-- agent-signals: reading_time_min: 6 · est_tokens: 3951 · updated: 2026-07-30 -->
Related: [Récupérer les conversations de l'Assistant](/fr/api/analytics/assistant-conversations.md), [Récupérer les statistiques d'appels de l'Assistant](/fr/api/analytics/assistant-caller-stats.md), [Obtenir le contenu de la page](/fr/api/assistant/get-page-content.md)

<div id="usage">
  ## Utilisation [#utilisation]
</div>

Utilisez cet endpoint pour exporter les retours utilisateurs collectés à partir de votre documentation. Les retours incluent les commentaires contextuels issus des évaluations de pages, les retours sur les extraits de code et les retours des agents.

Parcourez les résultats à l’aide du paramètre `cursor` renvoyé dans la réponse. Continuez à effectuer des requêtes tant que `hasMore` vaut `true`.

<div id="filtering">
  ## Filtrage [#filtrage]
</div>

Filtrez les feedbacks par :

* **Plage de dates** : utilisez `dateFrom` et `dateTo` pour limiter les résultats à une période donnée
* **Source** : filtrez par type de feedback, `code_snippet`, `contextual` ou `agent`
* **Statut** : filtrez par des valeurs de statut comme `pending`, `in_progress`, `resolved` ou `dismissed`

<div id="response-types">
  ## Types de réponse [#types-de-réponse]
</div>

La réponse contient différents types de commentaires en fonction de la source :

* **Commentaire contextuel** : inclut le booléen `helpful` et éventuellement l’adresse e-mail `contact`
* **Commentaire sur extrait de code** : inclut les champs `code`, `filename` et `lang`
* **Retour d'agent** : inclut un `comment` avec le texte du retour de l'agent et le `path` de la page concernée

<div id="rate-limits">
  ## Limites de débit [#limites-de-débit]
</div>

Cet endpoint autorise 100 requêtes par organisation et par heure. Tous les endpoints d'analytics partagent cette limite.

`GET /v1/analytics/{projectId}/feedback`

Renvoie des retours d’utilisateurs paginés avec des filtres facultatifs

Authentifiez-vous avec une clé d'API administrateur.

## OpenAPI

```json
{
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "parameters": [
    {
      "schema": {
        "type": "string",
        "description": "ID de votre projet. Vous pouvez le copier depuis la page [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) de votre Dashboard."
      },
      "required": true,
      "name": "projectId",
      "in": "path"
    },
    {
      "schema": {
        "type": "string",
        "description": "Date au format ISO 8601 ou AAAA-MM-JJ",
        "example": "2024-01-01"
      },
      "required": false,
      "name": "dateFrom",
      "in": "query"
    },
    {
      "schema": {
        "type": "string",
        "description": "Date au format ISO 8601 ou AAAA-MM-JJ. `dateTo` est une borne supérieure exclusive. Les résultats incluent les dates antérieures, mais pas la date spécifiée elle-même.",
        "example": "2024-01-01"
      },
      "required": false,
      "name": "dateTo",
      "in": "query"
    },
    {
      "schema": {
        "type": "string",
        "enum": [
          "code_snippet",
          "contextual",
          "agent",
          "thumbs_only"
        ],
        "description": "Filtrer par source des retours utilisateurs"
      },
      "required": false,
      "name": "source",
      "in": "query"
    },
    {
      "schema": {
        "type": "string",
        "description": "Liste de statuts séparés par des virgules pour le filtrage"
      },
      "required": false,
      "name": "status",
      "in": "query"
    },
    {
      "schema": {
        "type": "number",
        "minimum": 1,
        "maximum": 100,
        "default": 50,
        "description": "Nombre maximal de résultats par page"
      },
      "required": false,
      "name": "limit",
      "in": "query"
    },
    {
      "schema": {
        "type": "string",
        "description": "Curseur de pagination"
      },
      "required": false,
      "name": "cursor",
      "in": "query"
    }
  ],
  "responses": {
    "200": {
      "description": "Données de retours utilisateurs paginées",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "feedback": {
                "type": "array",
                "description": "Liste des retours.",
                "items": {
                  "anyOf": [
                    {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "Identifiant unique du retour."
                        },
                        "path": {
                          "type": "string",
                          "description": "Le chemin ou l’URL du document source."
                        },
                        "comment": {
                          "type": [
                            "string",
                            "null"
                          ],
                          "description": "Texte du commentaire de l’utilisateur."
                        },
                        "createdAt": {
                          "type": [
                            "string",
                            "null"
                          ],
                          "description": "Horodatage de l’envoi du retour."
                        },
                        "source": {
                          "type": "string",
                          "enum": [
                            "code_snippet",
                            "contextual",
                            "agent",
                            "thumbs_only"
                          ],
                          "description": "Source du retour. `code_snippet` correspond à un retour sur un bloc de code, `contextual` à un retour au niveau de la page, `agent` est un retour soumis par un agent IA tiers, `thumbs_only` est un vote pouce vers le haut/bas."
                        },
                        "status": {
                          "type": "string",
                          "enum": [
                            "pending",
                            "in_progress",
                            "resolved",
                            "dismissed"
                          ],
                          "description": "Statut actuel de révision du retour."
                        },
                        "helpful": {
                          "type": "boolean",
                          "description": "Indique si l'utilisateur a jugé le contenu utile."
                        },
                        "contact": {
                          "type": [
                            "string",
                            "null"
                          ],
                          "description": "Adresse e-mail fournie par l'utilisateur pour le suivi."
                        }
                      },
                      "required": [
                        "id",
                        "path",
                        "comment",
                        "createdAt",
                        "source",
                        "status",
                        "helpful",
                        "contact"
                      ],
                      "description": "Renvoyé lorsque la source est `contextual`. Indique si l'utilisateur a trouvé la page utile et un e-mail de contact optionnel."
                    },
                    {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "Identifiant unique du retour."
                        },
                        "path": {
                          "type": "string",
                          "description": "Chemin ou URL du document source."
                        },
                        "comment": {
                          "type": [
                            "string",
                            "null"
                          ],
                          "description": "Texte du commentaire de l’utilisateur."
                        },
                        "createdAt": {
                          "type": [
                            "string",
                            "null"
                          ],
                          "description": "Horodatage de l’envoi du retour."
                        },
                        "source": {
                          "type": "string",
                          "enum": [
                            "code_snippet",
                            "contextual",
                            "agent",
                            "thumbs_only"
                          ],
                          "description": "Source du retour. `code_snippet` correspond à un retour sur un bloc de code, `contextual` à un retour au niveau de la page, `agent` est un retour soumis par un agent IA tiers, `thumbs_only` est un vote pouce vers le haut/bas."
                        },
                        "status": {
                          "type": "string",
                          "enum": [
                            "pending",
                            "in_progress",
                            "resolved",
                            "dismissed"
                          ],
                          "description": "Statut actuel d’examen du retour."
                        },
                        "code": {
                          "type": "string",
                          "description": "Extrait de code auquel le retour se rapporte."
                        },
                        "filename": {
                          "type": [
                            "string",
                            "null"
                          ],
                          "description": "Nom de fichier associé à l'extrait de code."
                        },
                        "lang": {
                          "type": [
                            "string",
                            "null"
                          ],
                          "description": "Langage de programmation de l'extrait de code."
                        }
                      },
                      "required": [
                        "id",
                        "path",
                        "comment",
                        "createdAt",
                        "source",
                        "status",
                        "code",
                        "filename",
                        "lang"
                      ],
                      "description": "Renvoyé lorsque la source est `code_snippet`. Inclut le code, le nom de fichier et le langage de l'extrait auquel le retour se rapporte."
                    },
                    {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "Identifiant unique du retour."
                        },
                        "path": {
                          "type": "string",
                          "description": "Chemin ou URL du document source."
                        },
                        "comment": {
                          "type": [
                            "string",
                            "null"
                          ],
                          "description": "Texte du commentaire de l’utilisateur."
                        },
                        "createdAt": {
                          "type": [
                            "string",
                            "null"
                          ],
                          "description": "Horodatage de l’envoi du retour."
                        },
                        "source": {
                          "type": "string",
                          "enum": [
                            "code_snippet",
                            "contextual",
                            "agent",
                            "thumbs_only"
                          ],
                          "description": "Source du retour. `code_snippet` correspond à un retour sur un bloc de code, `contextual` à un retour au niveau de la page, `agent` est un retour soumis par un agent IA tiers, `thumbs_only` est un vote pouce vers le haut/bas."
                        },
                        "status": {
                          "type": "string",
                          "enum": [
                            "pending",
                            "in_progress",
                            "resolved",
                            "dismissed"
                          ],
                          "description": "Statut actuel d’examen du retour."
                        }
                      },
                      "required": [
                        "id",
                        "path",
                        "comment",
                        "createdAt",
                        "source",
                        "status"
                      ],
                      "description": "Renvoyé lorsque la source est `agent` ou `thumbs_only`. Contient uniquement les champs de base du retour."
                    }
                  ]
                }
              },
              "nextCursor": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Curseur permettant de récupérer la page de résultats suivante. null s’il n’y a plus de résultats."
              },
              "hasMore": {
                "type": "boolean",
                "description": "Indique si des résultats supplémentaires sont disponibles au-delà de cette page."
              }
            },
            "required": [
              "feedback",
              "nextCursor",
              "hasMore"
            ]
          }
        }
      }
    },
    "400": {
      "description": "Paramètres de requête invalides",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "error": {
                "type": "string",
                "description": "Message d’erreur décrivant ce qui s’est mal passé."
              },
              "details": {
                "type": "array",
                "description": "Détails supplémentaires sur l’erreur.",
                "items": {
                  "type": "object",
                  "properties": {
                    "message": {
                      "type": "string",
                      "description": "Description d’une erreur spécifique de validation ou de traitement."
                    }
                  },
                  "required": [
                    "message"
                  ]
                }
              }
            },
            "required": [
              "error"
            ]
          }
        }
      }
    },
    "500": {
      "description": "Erreur serveur",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "error": {
                "type": "string",
                "description": "Message d’erreur décrivant ce qui s’est mal passé."
              },
              "details": {
                "type": "array",
                "description": "Détails supplémentaires sur l’erreur.",
                "items": {
                  "type": "object",
                  "properties": {
                    "message": {
                      "type": "string",
                      "description": "Description d’une erreur spécifique de validation ou de traitement."
                    }
                  },
                  "required": [
                    "message"
                  ]
                }
              }
            },
            "required": [
              "error"
            ]
          }
        }
      }
    }
  }
}
```
