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

# Genera approfondimenti sulla sessione

> Attiva la generazione on-demand dell'approfondimento sulla sessione.

Restituisce ``already_exists`` se l'approfondimento è già stato generato.
Altrimenti avvia la generazione in background. Interroga l'endpoint
GET insights per recuperare i risultati al termine della generazione.

<Note>
  Il `devin_id` è l'ID della sessione preceduto dal prefisso `devin-` (ad es., `devin-abc123`).
</Note>

<div id="permissions">
  ## Autorizzazione
</div>

Richiede un utente di servizio con l'autorizzazione `ManageOrgSessions` a livello dell'organizzazione.

<div id="behavior">
  ## Comportamento
</div>

* Se gli insight sono già stati generati (o la generazione è in corso), l'endpoint restituisce `{ "status": "already_exists" }` senza riavviarla.
* Se non esistono insight (o l'ultimo tentativo non è andato a buon fine), l'endpoint avvia la generazione in background e restituisce `{ "status": "started" }`.
* Effettua il polling dell'endpoint [GET session insights](/it/api-reference/v3/sessions/get-organizations-session-insights) per recuperare i risultati una volta completata la generazione.


## OpenAPI

````yaml it/v3-openapi.yaml POST /v3/organizations/{org_id}/sessions/{devin_id}/insights/generate
openapi: 3.1.0
info:
  description: API Devin v3 con autenticazione utente di servizio e RBAC
  title: Devin API v3
  version: 3.0.0
servers: []
security:
  - bearerAuth: []
paths:
  /v3/organizations/{org_id}/sessions/{devin_id}/insights/generate:
    post:
      tags:
        - sessions
      summary: Genera approfondimenti sulla sessione
      description: >-
        Attiva la generazione on-demand dell'approfondimento sulla sessione.


        Restituisce ``already_exists`` se l'approfondimento è già stato
        generato.

        Altrimenti avvia la generazione in background. Interroga l'endpoint

        GET insights per recuperare i risultati al termine della generazione.
      operationId: >-
        handle_generate_session_insights_v3_organizations__org_id__sessions__devin_id__insights_generate_post
      parameters:
        - description: 'ID dell''organizzazione (prefisso: org-)'
          in: path
          name: org_id
          required: true
          schema:
            anyOf:
              - type: string
              - type: 'null'
            example: org-abc123def456
            title: Org Id
        - description: 'ID della sessione Devin (prefisso: devin-)'
          in: path
          name: devin_id
          required: true
          schema:
            anyOf:
              - type: string
              - type: 'null'
            example: devin-abc123def456
            title: Devin Id
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionInsightsGenerateResponse'
          description: Risposta riuscita
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Non autorizzato
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Accesso negato
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Non trovato
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Conflitto
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Contenuto non elaborabile
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Troppe richieste
components:
  schemas:
    SessionInsightsGenerateResponse:
      description: >-
        Risposta all'attivazione della generazione degli approfondimenti sulla
        sessione.
      properties:
        session_id:
          description: >-
            L'ID della sessione per cui è stata attivata la generazione
            dell'approfondimento sulla sessione.
          title: Session Id
          type: string
        status:
          description: Lo stato della richiesta di generazione.
          title: Status
          type: string
      required:
        - session_id
        - status
      title: SessionInsightsGenerateResponse
      type: object
    ProblemDetail:
      description: >-
        Corpo dell'errore application/problem+json RFC 9457 per l'API v3.


        detail è mantenuto dal corpo legacy {"detail": ...} per
        retrocompatibilità; gli

        altri membri sono aggiuntivi. errors contiene gli errori di validazione
        a livello di campo

        (solo 422).
      properties:
        detail:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            Una spiegazione leggibile dall'utente, specifica per questa
            occorrenza.
          title: Detail
        errors:
          anyOf:
            - items:
                additionalProperties: true
                type: object
              type: array
            - type: 'null'
          description: Errori di convalida a livello di campo (solo per le risposte 422).
          title: Errors
        instance:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            Un riferimento URI (il percorso della richiesta) per questa
            occorrenza.
          title: Instance
        status:
          description: Il codice di stato HTTP.
          title: Status
          type: integer
        title:
          description: Un breve riepilogo del tipo di problema, leggibile dall'utente.
          title: Title
          type: string
        type:
          default: about:blank
          description: Un riferimento URI che identifica il tipo di problema.
          title: Type
          type: string
      required:
        - title
        - status
      title: ProblemDetail
      type: object
  securitySchemes:
    bearerAuth:
      description: 'Credenziale dell''utente del servizio (prefisso: cog_)'
      scheme: bearer
      type: http

````