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

# Feedbacks

> Signaler un résultat d’API incorrect, incomplet ou échoué. Ne coûte aucun crédit.

Grâce à l'endpoint Olostep `/v1/feedbacks`, tu peux signaler quand l'API a fait une erreur. Appelle-le depuis un agent ou depuis ton propre code lorsqu'un résultat est incorrect, incomplet, lent, échoué, ou ne correspond pas à la documentation.

* Envoie l'`id` de l'objet concerné par le feedback pour que nous puissions le tracer jusqu'à la requête exacte
* Étiquette le rapport avec une catégorie et des codes de symptôme optionnels
* Soumettre un feedback est gratuit, et cela fonctionne même lorsque les crédits de ton équipe sont épuisés

Pour les détails de l'API, consulte la [Référence de l’API pour soumettre un feedback](https://docs.olostep.com/api-reference/feedbacks/create.md).

## Soumettre un feedback

`category` et `note` sont requis. Inclure `related_object_id` lorsque tu l'as : un `scrape_…`, `batch_…`, ou un id de ressource similaire, ou l'id `error_…` lorsque l'appel a échoué.

```python Python theme={null}
import requests
import json

API_KEY = "<YOUR_API_KEY>"

payload = {
    "category": "output_quality",
    "issues": ["missing_content", "broken_formatting"],
    "note": "Le markdown omet le tableau de comparaison des prix ; toutes les 4 lignes étaient attendues.",
    "affected_endpoint": "POST /v1/scrapes",
    "related_object_id": "scrape_abc1234567",
    "url": "https://example.com/pricing"
}

headers = {
    "Authorization": f"Bearer {API_KEY}",
    "Content-Type": "application/json"
}

response = requests.post(
    "https://api.olostep.com/v1/feedbacks",
    headers=headers,
    json=payload
)
print(json.dumps(response.json(), indent=2))
```

```js Node theme={null}
const res = await fetch('https://api.olostep.com/v1/feedbacks', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer <YOUR_API_KEY>',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    category: 'output_quality',
    issues: ['missing_content', 'broken_formatting'],
    note: 'Le markdown omet le tableau de comparaison des prix ; toutes les 4 lignes étaient attendues.',
    affected_endpoint: 'POST /v1/scrapes',
    related_object_id: 'scrape_abc1234567',
    url: 'https://example.com/pricing'
  })
})
console.log(await res.json())
```

```bash cURL theme={null}
curl -X POST https://api.olostep.com/v1/feedbacks \
  -H "Authorization: Bearer $OLOSTEP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "category": "output_quality",
    "issues": ["missing_content", "broken_formatting"],
    "note": "Le markdown omet le tableau de comparaison des prix ; toutes les 4 lignes étaient attendues.",
    "affected_endpoint": "POST /v1/scrapes",
    "related_object_id": "scrape_abc1234567",
    "url": "https://example.com/pricing"
  }'
```

### Réponse

La réponse est l'objet `feedback` stocké. Il n'y a pas d'endpoint pour lister ou obtenir ; le feedback est lu de notre côté.

```json theme={null}
{
  "object": "feedback",
  "id": "feedback_019e70f9-214a-74fc-a1ae-26fd3318be3e",
  "category": "output_quality",
  "issues": ["missing_content", "broken_formatting"],
  "note": "Le markdown omet le tableau de comparaison des prix ; toutes les 4 lignes étaient attendues.",
  "affected_endpoint": "POST /v1/scrapes",
  "related_object_id": "scrape_abc1234567",
  "url": "https://example.com/pricing",
  "created_at": "2026-10-23T00:00:00.000Z"
}
```

## Champs

| Champ | Requis | Remarques |
| - | - | - |
| `category` | oui | L'un de `output_quality`, `reliability`, `performance`, `documentation`, `api_usability`, `feature_gap`, `other` |
| `note` | oui | Ce qui n'a pas fonctionné et ce que tu attendais à la place, jusqu'à 4 000 caractères |
| `issues` | non | Jusqu'à 20 codes de symptôme en `snake_case`. Les codes documentés sont listés ci-dessous ; tout autre code de la même forme est accepté |
| `affected_endpoint` | non | `METHOD /path` avec le chemin pluriel canonique, par exemple `POST /v1/scrapes` |
| `related_object_id` | non | L'`id` du scrape, batch, crawl, answer, ou autre objet, ou l'id `error_…` lorsque l'appel a échoué |
| `url` | non | La page concernée par le feedback, comme l'URL qui a été scrappée |

### Codes de problème

`missing_content`, `incorrect_content`, `incomplete_content`, `broken_formatting`, `irrelevant_results`, `duplicate_results`, `stale_content`, `request_failed`, `timeout`, `slow_response`, `inconsistent_result`, `docs_mismatch`, `broken_example`, `confusing_schema`, `confusing_error`, `unsupported_website`, `unsupported_format`.


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