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

# API stato del servizio: feed pubblico di stato Didit

> Feed pubblico, senza autenticazione: GET /v3/status/ restituisce lo stato dei servizi Didit e 7 giorni di incidenti per widget e health check.



Prompt per lo stato del servizio
        Copia il prompt negli appunti



      
      

\<pre>

\`Read Didit's public service status feed.

GET https://verification.didit.me/v3/status/

Auth: NONE. Send no auth header.

Success (HTTP 200):
\- status: worst state of any service right now: "operational" | "degraded" | "down"
\- updated_at: ISO 8601 time Didit built the response (up to 30 seconds old)
\- services[]: one { key, name, status } per service. Match on key, never on name. Keys:
service_id_verification, service_liveness_face_match, service_aml_screening, service_kyb_registries,
service_database_validation, service_phone_delivery, service_email_delivery, service_transaction_monitoring
\- incidents[]: newest started_at first. Every ongoing incident plus those resolved in the last 7 days (at most 50 resolved). Each:
\{ id, service, service_name, state ("degraded" | "down"), status ("ongoing" | "resolved"), title, body,
affected, country_name, started_at, resolved_at (null while ongoing), duration_minutes (null while ongoing) }
\- title and body are English. To translate, build your own text from service, state and country_name.

Cadence: responses are cached for 30 seconds. Poll no more than once every 30 seconds.

curl -fsS https://verification.didit.me/v3/status/

For end-to-end Didit integration, paste in the full prompt at /integration/integration-prompt.`

\</pre>



      
      

Incolla in

## PanoramicaRestituisce lo stato di ogni servizio Didit, lo stato complessivo e gli incidenti in corso o risolti negli ultimi 7 giorni.
L'endpoint è pubblico: non inviare alcun header di autenticazione.
La risposta non contiene dati dell'organizzazione ed è uguale per ogni chiamante.## Quando usarlo- **Widget di stato**: mostra ai tuoi utenti o al tuo team di supporto se un servizio Didit è degradato in questo momento.
- **Controllo dello stato dell'integrazione**: prima di incolpare il tuo codice per controlli lenti o falliti, verifica se Didit segnala un incidente sul servizio che stai chiamando.
- **Storico degli incidenti**: elenca che cosa è successo negli ultimi 7 giorni e quanto è durato ciascun incidente.Per verificare solo che l'API sia raggiungibile, usa invece l'[healthcheck](https://docs.didit.me/it/api-reference/healthcheck.md).## PollingLe risposte sono memorizzate nella cache per 30 secondi, quindi non effettuare il polling più di una volta ogni 30 secondi.
`updated_at` indica quando Didit ha generato la risposta che hai ricevuto.
Si applica inoltre un limite di frequenza per le richieste GET di 600 richieste al minuto per indirizzo.## Servizi`services` elenca tutti i servizi, con o senza incidenti.
Effettua la corrispondenza su `key`: `name` è un nome visualizzato in inglese e può cambiare.| `key` | Servizio |
| - | - |
| `service_id_verification` | Verifica dell'identità |
| `service_liveness_face_match` | Rilevamento della vitalità e confronto facciale |
| `service_aml_screening` | Screening AML |
| `service_kyb_registries` | Registri KYB |
| `service_database_validation` | Validazione su database |
| `service_phone_delivery` | Consegna della verifica telefonica |
| `service_email_delivery` | Consegna della verifica email |
| `service_transaction_monitoring` | Monitoraggio delle transazioni |Lo `status` di ciascun servizio è `operational`, `degraded` o `down`.
È `operational` quando il servizio non ha incidenti in corso; altrimenti è lo stato peggiore tra i suoi incidenti in corso.
Lo `status` di primo livello è lo stato peggiore tra tutti i servizi.## Incidenti`incidents` elenca ogni incidente in corso e gli incidenti risolti negli ultimi 7 giorni, dal più recente al più vecchio in base a `started_at`.
Sono elencati al massimo 50 incidenti risolti.- `state` è `degraded` o `down`. Un incidente risolto mantiene l'ultimo stato che aveva.
- `status` è `ongoing` finché il servizio non si ripristina, poi diventa `resolved`.
- `resolved_at` e `duration_minutes` sono `null` mentre l'incidente è in corso.
- `affected` e `country_name` indicano il paese o il registro interessato, per esempio `Brazil (CPF)` e `Brazil`. Sono vuoti quando l'incidente non è legato a un paese o a un registro.
- `title` e `body` sono in inglese. Per mostrare l'incidente in un'altra lingua, crea il tuo testo a partire da `service`, `state` e `country_name`.## Esempio di risposta```json theme={null}
{
  "status": "degraded",
  "updated_at": "2026-10-13T09:41:07.512345Z",
  "services": [
    { "key": "service_id_verification", "name": "ID verification", "status": "operational" },
    { "key": "service_liveness_face_match", "name": "Liveness and face match", "status": "operational" },
    { "key": "service_aml_screening", "name": "AML screening", "status": "operational" },
    { "key": "service_kyb_registries", "name": "KYB registries", "status": "operational" },
    { "key": "service_database_validation", "name": "Database validation", "status": "degraded" },
    { "key": "service_phone_delivery", "name": "Phone verification delivery", "status": "operational" },
    { "key": "service_email_delivery", "name": "Email verification delivery", "status": "operational" },
    { "key": "service_transaction_monitoring", "name": "Transaction monitoring", "status": "operational" }
  ],
  "incidents": [
    {
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "service": "service_database_validation",
      "service_name": "Database validation",
      "state": "degraded",
      "status": "ongoing",
      "title": "Database validation is degraded in Brazil.",
      "body": "Checks against Brazil (CPF) may be slow or fail since 08:55 UTC.",
      "affected": "Brazil (CPF)",
      "country_name": "Brazil",
      "started_at": "2026-10-13T08:55:00Z",
      "resolved_at": null,
      "duration_minutes": null
    },
    {
      "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
      "service": "service_aml_screening",
      "service_name": "AML screening",
      "state": "down",
      "status": "resolved",
      "title": "AML screening is back to normal.",
      "body": "Recovered at 14:32 UTC after 17 minutes.",
      "affected": "",
      "country_name": "",
      "started_at": "2026-10-11T14:15:00Z",
      "resolved_at": "2026-10-11T14:32:00Z",
      "duration_minutes": 17
    }
  ]
}
```## Correlati- [Healthcheck](https://docs.didit.me/it/api-reference/healthcheck.md): una sonda pubblica di disponibilità che non richiede nemmeno un header di autenticazione.
- [Webhook di alert](https://docs.didit.me/it/integration/alert-webhooks.md): ricevi `alert.service.degraded` e `alert.service.recovered` inviati al tuo endpoint per i servizi usati dalla tua organizzazione.
- [Limitazione della frequenza](https://docs.didit.me/it/integration/rate-limiting.md)


## OpenAPI

````yaml it/openapi-25.json GET /v3/status/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: API di verifica dell'identità. Autenticati con l'intestazione x-api-key.
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/status/:
    get:
      tags:
        - Status
      summary: Recupera stato del servizio (pubblico, non autenticato)
      description: >-
        Restituisce lo stato di ciascun servizio Didit (`operational`,
        `degraded` o `down`), lo stato complessivo (il peggiore tra essi) e gli
        incidenti in corso o risolti negli ultimi 7 giorni. Usalo per alimentare
        un widget di stato o per verificare lo stato di Didit dalla tua
        integrazione.


        Pubblico: non inviare alcuna intestazione di autenticazione. La risposta
        non contiene dati dell'organizzazione ed è identica per ogni chiamante.
        Le risposte vengono memorizzate nella cache per 30 secondi, quindi non
        effettuare il polling più di una volta ogni 30 secondi.
      operationId: get_v3_status
      parameters: []
      responses:
        '200':
          description: Stato attuale del servizio.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceStatusFeed'
              examples:
                One service degraded:
                  summary: Un incidente in corso e uno risolto questa settimana
                  value:
                    status: degraded
                    updated_at: '2026-10-13T09:41:07.512345Z'
                    services:
                      - key: service_id_verification
                        name: ID verification
                        status: operational
                      - key: service_liveness_face_match
                        name: Liveness and face match
                        status: operational
                      - key: service_aml_screening
                        name: AML screening
                        status: operational
                      - key: service_kyb_registries
                        name: KYB registries
                        status: operational
                      - key: service_database_validation
                        name: Database validation
                        status: degraded
                      - key: service_phone_delivery
                        name: Phone verification delivery
                        status: operational
                      - key: service_email_delivery
                        name: Email verification delivery
                        status: operational
                      - key: service_transaction_monitoring
                        name: Transaction monitoring
                        status: operational
                    incidents:
                      - id: 3fa85f64-5717-4562-b3fc-2c963f66afa6
                        service: service_database_validation
                        service_name: Database validation
                        state: degraded
                        status: ongoing
                        title: Database validation is degraded in Brazil.
                        body: >-
                          Checks against Brazil (CPF) may be slow or fail since
                          08:55 UTC.
                        affected: Brazil (CPF)
                        country_name: Brazil
                        started_at: '2026-10-13T08:55:00Z'
                        resolved_at: null
                        duration_minutes: null
                      - id: 7c9e6679-7425-40de-944b-e07fc1f90ae7
                        service: service_aml_screening
                        service_name: AML screening
                        state: down
                        status: resolved
                        title: AML screening is back to normal.
                        body: Recovered at 14:32 UTC after 17 minutes.
                        affected: ''
                        country_name: ''
                        started_at: '2026-10-11T14:15:00Z'
                        resolved_at: '2026-10-11T14:32:00Z'
                        duration_minutes: 17
                All operational:
                  summary: Nessun incidente negli ultimi 7 giorni
                  value:
                    status: operational
                    updated_at: '2026-10-13T09:41:07.512345Z'
                    services:
                      - key: service_id_verification
                        name: ID verification
                        status: operational
                      - key: service_liveness_face_match
                        name: Liveness and face match
                        status: operational
                      - key: service_aml_screening
                        name: AML screening
                        status: operational
                      - key: service_kyb_registries
                        name: KYB registries
                        status: operational
                      - key: service_database_validation
                        name: Database validation
                        status: operational
                      - key: service_phone_delivery
                        name: Phone verification delivery
                        status: operational
                      - key: service_email_delivery
                        name: Email verification delivery
                        status: operational
                      - key: service_transaction_monitoring
                        name: Transaction monitoring
                        status: operational
                    incidents: []
        '429':
          description: >-
            Più di 600 richieste GET in un minuto dallo stesso indirizzo IP (o
            dalla stessa chiave API, se ne invii una). Rispetta `Retry-After`
            prima di riprovare.
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    type: string
              example:
                detail: >-
                  GET request rate limit exceeded. You can make up to 600
                  requests per minute.
      security:
        - {}
      x-codeSamples:
        - lang: curl
          label: curl
          source: curl -fsS https://verification.didit.me/v3/status/
        - lang: python
          label: Python
          source: >-
            import requests


            resp = requests.get('https://verification.didit.me/v3/status/',
            timeout=5)

            resp.raise_for_status()

            feed = resp.json()

            print(feed['status'])

            for service in feed['services']:
                if service['status'] != 'operational':
                    print(service['key'], service['status'])
        - lang: javascript
          label: JavaScript
          source: >-
            const feed = await
            fetch('https://verification.didit.me/v3/status/').then((r) =>
            r.json());

            console.log(feed.status);

            const affected = feed.services.filter((s) => s.status !==
            'operational');

            console.log(affected.map((s) => `${s.key}: ${s.status}`));
components:
  schemas:
    ServiceStatusFeed:
      type: object
      description: >-
        Stato pubblico dei servizi: lo stato di ciascun servizio Didit, lo stato
        complessivo e gli incidenti in corso o risolti negli ultimi 7 giorni.
      required:
        - status
        - updated_at
        - services
        - incidents
      properties:
        status:
          type: string
          enum:
            - operational
            - degraded
            - down
          description: >-
            Lo stato peggiore tra tutti i servizi in questo momento, determinato
            esclusivamente dagli incidenti in corso.
          example: degraded
        updated_at:
          type: string
          format: date-time
          description: >-
            Quando Didit ha generato questa risposta (ISO 8601, UTC). Le
            risposte sono memorizzate nella cache per 30 secondi, quindi possono
            risalire a un massimo di 30 secondi prima.
          example: '2026-10-13T09:41:07.512345Z'
        services:
          type: array
          description: Una voce per servizio, con tutti i servizi sempre elencati.
          items:
            $ref: '#/components/schemas/ServiceStatusService'
        incidents:
          type: array
          description: >-
            `started_at` più recente per primo. Ogni incidente in corso, più gli
            incidenti risolti negli ultimi 7 giorni (al massimo 50 incidenti
            risolti). Vuoto se non si è verificato nulla in quel periodo.
          items:
            $ref: '#/components/schemas/ServiceStatusIncident'
    ServiceStatusService:
      type: object
      required:
        - key
        - name
        - status
      properties:
        key:
          type: string
          enum:
            - service_id_verification
            - service_liveness_face_match
            - service_aml_screening
            - service_kyb_registries
            - service_database_validation
            - service_phone_delivery
            - service_email_delivery
            - service_transaction_monitoring
          description: >-
            Chiave di servizio stabile. Esegui il confronto usando questa
            chiave, mai il nome visualizzato. `service_id_verification`:
            Verifica dell'identità, `service_liveness_face_match`: Rilevamento
            della vitalità e confronto facciale, `service_aml_screening`:
            Screening AML, `service_kyb_registries`: Registri KYB,
            `service_database_validation`: Validazione su database,
            `service_phone_delivery`: Consegna della verifica telefonica,
            `service_email_delivery`: Consegna della verifica email,
            `service_transaction_monitoring`: Monitoraggio delle transazioni.
          example: service_database_validation
        name:
          type: string
          description: Nome visualizzato in inglese del servizio.
          example: Database validation
        status:
          type: string
          enum:
            - operational
            - degraded
            - down
          description: >-
            `operational` quando non ci sono incidenti in corso per il servizio,
            altrimenti lo stato peggiore tra i suoi incidenti in corso.
          example: degraded
    ServiceStatusIncident:
      type: object
      required:
        - id
        - service
        - service_name
        - state
        - status
        - title
        - body
        - affected
        - country_name
        - started_at
        - resolved_at
        - duration_minutes
      properties:
        id:
          type: string
          format: uuid
          description: ID dell'incidente.
          example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
        service:
          type: string
          enum:
            - service_id_verification
            - service_liveness_face_match
            - service_aml_screening
            - service_kyb_registries
            - service_database_validation
            - service_phone_delivery
            - service_email_delivery
            - service_transaction_monitoring
          description: Chiave del servizio interessato (vedi `services[].key`).
          example: service_database_validation
        service_name:
          type: string
          description: Nome visualizzato in inglese del servizio interessato.
          example: Database validation
        state:
          type: string
          enum:
            - degraded
            - down
          description: >-
            Impatto sul servizio. Un incidente risolto mantiene l'ultimo stato
            che aveva.
          example: degraded
        status:
          type: string
          enum:
            - ongoing
            - resolved
          description: '`ongoing` fino al ripristino del servizio, poi `resolved`.'
          example: ongoing
        title:
          type: string
          description: >-
            Titolo in inglese. Per tradurlo, componi il tuo testo a partire da
            `service`, `state` e `country_name`.
          example: Database validation is degraded in Brazil.
        body:
          type: string
          description: >-
            Riga di dettaglio in inglese: da quando i controlli potrebbero
            essere lenti o fallire, oppure quando il servizio si è ripristinato.
          example: Checks against Brazil (CPF) may be slow or fail since 08:55 UTC.
        affected:
          type: string
          description: >-
            Paesi o registri interessati, ad esempio `Brazil (CPF)`. Vuoto
            quando l'incidente non è collegato a un paese o a un registro.
          example: Brazil (CPF)
        country_name:
          type: string
          description: >-
            Paese interessato, in inglese. Vuoto quando l'incidente non è
            collegato a un paese.
          example: Brazil
        started_at:
          type: string
          format: date-time
          description: Quando è iniziato l'incidente (ISO 8601, UTC).
          example: '2026-10-13T08:55:00Z'
        resolved_at:
          type: string
          format: date-time
          nullable: true
          description: >-
            Quando il servizio è stato ripristinato (ISO 8601, UTC). `null`
            finché l'incidente è in corso.
        duration_minutes:
          type: integer
          nullable: true
          description: >-
            Minuti interi da `started_at` a `resolved_at`. `null` finché
            l'incidente è in corso.

````

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