> ## 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.

# Invia Feedback

> Dicci quando l’API ha commesso un errore. Non costa crediti.

Usa questo endpoint quando un risultato è stato errato, incompleto, lento, fallito o non corrispondeva alla documentazione. È pensato per essere chiamato sia da agenti che da persone: quando la tua pipeline rileva un risultato errato, segnalalo con l'`id` dell'oggetto da cui proviene e possiamo risalire alla richiesta esatta.

L'invio di feedback è gratuito e funziona anche quando i crediti del tuo team sono esauriti.

## Cosa inviare

| Campo | Obbligatorio | Note |
| - | - | - |
| `category` | sì | Uno tra `output_quality`, `reliability`, `performance`, `documentation`, `api_usability`, `feature_gap`, `other` |
| `note` | sì | Cosa è andato storto e cosa ti aspettavi invece, fino a 4.000 caratteri |
| `issues` | no | Fino a 20 codici sintomo in `snake_case`, come `missing_content` o `timeout`. I codici documentati sono elencati nello schema; qualsiasi altro codice con la stessa forma è accettato |
| `affected_endpoint` | no | `METHOD /path`, ad esempio `POST /v1/scrapes` |
| `related_object_id` | no | L'`id` dello scrape, batch, crawl, answer, o altro oggetto di cui il feedback riguarda, o l'`error_…` id quando la chiamata è fallita |
| `url` | no | La pagina di cui il feedback riguarda, come l'URL che è stato scrappato |

## Esempio

```bash cURL theme={null}
curl -X POST https://api.olostep.com/v1/feedbacks \
  -H "Authorization: Bearer <your_token>" \
  -H "Content-Type: application/json" \
  -d '{
    "category": "output_quality",
    "issues": ["missing_content", "broken_formatting"],
    "note": "Il markdown omette la tabella di confronto dei prezzi; ci si aspettava tutte e 4 le righe.",
    "affected_endpoint": "POST /v1/scrapes",
    "related_object_id": "scrape_abc1234567",
    "url": "https://example.com/pricing"
  }'
```

La risposta è l'oggetto `feedback` memorizzato con il suo `id` e `created_at`. Non esiste ancora un endpoint per elencare o ottenere; il feedback viene letto dalla nostra parte.


## OpenAPI

````yaml it/openapi/feedbacks.json POST /v1/feedbacks
openapi: 3.0.3
info:
  title: API Feedbacks
  version: 1.0.0
  description: >-
    Segnala un problema con l'API di Olostep: output errato o incompleto, un
    fallimento, una discrepanza nella documentazione o una capacità mancante.
    Non costa crediti.
servers:
  - url: https://api.olostep.com
security:
  - Authorization: []
paths:
  /v1/feedbacks:
    post:
      summary: Invia feedback
      description: >-
        Segnala un problema con l'API. Includi l'id dell'oggetto a cui si
        riferisce il feedback quando lo hai. Non costa crediti.
      operationId: createFeedback
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FeedbackCreateRequest'
      responses:
        '200':
          description: Il feedback memorizzato.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Feedback'
        '400':
          description: Il corpo non è valido.
        '401':
          description: La chiave API è mancante o non valida.
components:
  schemas:
    FeedbackCreateRequest:
      type: object
      required:
        - category
        - note
      properties:
        category:
          type: string
          enum:
            - output_quality
            - reliability
            - performance
            - documentation
            - api_usability
            - feature_gap
            - other
          description: Il motivo principale del feedback.
        note:
          type: string
          minLength: 1
          maxLength: 4000
          description: Cosa è andato storto e cosa ti aspettavi invece.
          example: >-
            The markdown drops the pricing comparison table; expected all 4
            rows.
        issues:
          type: array
          maxItems: 20
          items:
            type: string
            pattern: ^[a-z0-9](?:[a-z0-9_]{0,78}[a-z0-9])?$
          description: >-
            Sintomi specifici, come codici in snake_case minuscolo. Codici
            documentati: 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. Qualsiasi altro codice della stessa forma è
            accettato.
          example:
            - missing_content
            - broken_formatting
        affected_endpoint:
          type: string
          minLength: 1
          maxLength: 200
          description: >-
            L'endpoint a cui si riferisce il feedback, come `METHOD /path` con
            il percorso plurale canonico.
          example: POST /v1/scrapes
        related_object_id:
          type: string
          minLength: 1
          maxLength: 128
          description: >-
            L'id dell'oggetto restituito dall'API a cui si riferisce il
            feedback: un id di risorsa come scrape_…, batch_… o simile, o l'id
            dell'oggetto errore (error_…) quando la chiamata è fallita.
          example: scrape_abc1234567
        url:
          type: string
          format: uri
          maxLength: 2048
          description: >-
            La pagina a cui si riferisce il feedback, come l'URL che è stato
            scrappato.
          example: https://example.com/pricing
    Feedback:
      type: object
      required:
        - object
        - id
        - category
        - issues
        - note
        - created_at
      properties:
        object:
          type: string
          enum:
            - feedback
        id:
          type: string
          example: feedback_019e70f9-214a-74fc-a1ae-26fd3318be3e
        category:
          type: string
        issues:
          type: array
          items:
            type: string
        note:
          type: string
        affected_endpoint:
          type: string
        related_object_id:
          type: string
        url:
          type: string
        created_at:
          type: string
          format: date-time
          example: '2026-10-23T00:00:00.000Z'
  securitySchemes:
    Authorization:
      type: http
      scheme: bearer
      description: >-
        Header di autenticazione Bearer nella forma Bearer <token>, dove <token>
        è il tuo token di autenticazione.

````

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