Implementazione: video

I seguenti esempi mostrano come utilizzare l'API YouTube Data (v3) per eseguire funzioni correlate ai video.

Recuperare i video caricati di un canale

Questo esempio recupera i video caricati su un canale specifico. L'esempio prevede due passaggi:

Questo esempio mostra come recuperare un elenco dei video più popolari di YouTube, selezionati utilizzando un algoritmo che combina molti indicatori diversi per determinare la popolarità complessiva.

Per recuperare l'elenco dei video più popolari, chiama il metodo videos.list e imposta il valore del parametro chart su mostPopular. Il grafico mostPopular include video musicali, film e videogiochi di tendenza.

Poi, puoi impostare facoltativamente i seguenti parametri:

  • regionCode: indica all'API di restituire un elenco di video per la regione specificata. Il valore parametro è un codice paese ISO 3166-1 alpha-2. Puoi utilizzare il metodo i18nRegions.list per recuperare un elenco dei codici regione supportati da YouTube.
  • videoCategoryId: identifica la categoria di video per la quale devono essere recuperati i video più popolari. Puoi utilizzare il videoCategories.list metodo per recuperare un elenco degli ID categoria supportati da YouTube.

Ad esempio, la seguente richiesta recupera i video sportivi più popolari in Spagna:

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.list?
        part=snippet
        &chart=mostPopular
        &regionCode=es
        &videoCategoryId=17
  

Recuperare le statistiche dei video in batch

Questo esempio recupera le statistiche per un elenco di video utilizzando il metodo videos.batchGetStats.

Per utilizzare questo metodo, imposta il parametro id della richiesta su un elenco separato da virgole degli ID video di YouTube per i quali vuoi recuperare le statistiche. Imposta il valore del parametro part su un elenco separato da virgole delle parti della risorsa videoStat che vuoi includere nella risposta. Le parti supportate sono snippet, statistics, contentDetails e id.

Per utilizzare questo metodo per i video non pubblici è richiesta l'autenticazione, ma non per i video pubblici. Se la richiesta recupera i dati di video non pubblici, deve essere autorizzata correttamente.

La richiesta riportata di seguito recupera le statistiche per gli ID video VIDEO_ID_1 e VIDEO_ID_2:

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.batchGetStats?
        part=snippet,statistics
        &id=VIDEO_ID_1,VIDEO_ID_2

Caricare un video

Poiché Explorer API non supporta la possibilità di caricare file, questa descrizione non include un link a un esempio eseguibile. Le seguenti risorse ti aiuteranno a modificare l'applicazione in modo che possa caricare video utilizzando l'API v3:

  • La documentazione del metodo videos.insert dell'API contiene diversi esempi di codice che spiegano come caricare un video utilizzando diversi linguaggi di programmazione.

  • La guida Caricamenti ripristinabili spiega la sequenza di richieste HTTP che un'applicazione utilizza per caricare video utilizzando una procedura di caricamento ripristinabile. La guida è destinata principalmente agli sviluppatori che non possono utilizzare le librerie client delle API di Google, alcune delle quali forniscono supporto nativo per i caricamenti ripristinabili.

  • L'esempio JavaScript per il caricamento di un video utilizza CORS (condivisione delle risorse tra origini) per mostrare come caricare un file video tramite una pagina web. La libreria di caricamento CORS utilizzata dall'API v3 supporta naturalmente il caricamento ripristinabile. Inoltre, l'esempio mostra come controllare lo stato di un video caricato recuperando la parte processingDetails della risorsa video, nonché come gestire le modifiche dello stato del video caricato.

Controllare lo stato di un video caricato

Questo esempio mostra come controllare lo stato di un video caricato. Un video caricato sarà immediatamente visibile nel feed dei video caricati dell'utente autenticato. Tuttavia, il video non sarà visibile su YouTube finché non sarà stato elaborato.

  • Passaggio 1: carica il video

    Chiama il metodo videos.insert per caricare il video. Se la richiesta ha esito positivo, la risposta dell'API conterrà una risorsa video che identifica l'ID video univoco del video caricato.

  • Passaggio 2: controlla lo stato del video

    Chiama il metodo videos.list per controllare lo stato del video. Imposta il valore del parametro id sull'ID video ottenuto nel passaggio 1. Imposta il valore del parametro part su processingDetails.

    Se la richiesta viene gestita correttamente, la risposta dell'API conterrà una risorsa video. Controlla il valore della proprietà processingDetails.processingStatus per determinare se YouTube sta ancora elaborando il video. Il valore della proprietà cambierà in un valore diverso da processing, ad esempio succeeded o failed, quando YouTube avrà terminato l'elaborazione del video.

    Il corpo della richiesta è una risorsa video in cui la proprietà id specifica l'ID video del video che stai eliminando. In questo esempio, la risorsa contiene anche un oggetto recordingDetails.

    La richiesta riportata di seguito controlla lo stato di un video. Per completare la richiesta in Explorer API, devi impostare il valore della proprietà id.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.list?
            part=snippet,processingDetails
            &id=VIDEO_ID

Nota: la tua applicazione potrebbe eseguire il polling dell'API per controllare periodicamente lo stato di un video appena caricato. Una volta elaborato il video, l'applicazione potrebbe creare un annuncio o procedere con un'altra azione a seconda dello stato del video.

Aggiornare un video

Questo esempio mostra come aggiornare un video per aggiungere informazioni sull'ora e sul luogo in cui è stato registrato. L'esempio prevede i seguenti passaggi:

  • Passaggio 1: recupera l'ID video

    Segui i passaggi precedenti per recuperare i video caricati del canale dell'utente attualmente autenticato. L'elenco potrebbe essere utilizzato per visualizzare un elenco di video, utilizzando l'ID di ogni video come chiave.

    Nota: esistono molti altri modi per ottenere gli ID video, ad esempio recuperando i risultati di ricerca o elencando gli elementi in una playlist. Tuttavia, poiché un video può essere aggiornato solo dal suo proprietario, il recupero di un elenco di video di proprietà dell'utente che autorizza la richiesta dell'API è probabilmente il primo passo di questa procedura.

  • Passaggio 2: aggiorna un video

    Chiama il metodo videos.update per aggiornare un video specifico. Imposta il valore del parametro part su recordingDetails. (Il valore del parametro dipende dai campi dei metadati del video che vengono aggiornati.)

    Il corpo della richiesta è una risorsa video in cui la proprietà id specifica l'ID video del video che stai aggiornando. In questo esempio, la risorsa contiene anche un oggetto recordingDetails.

    La risorsa di esempio riportata di seguito indica che il video è stato registrato il 30 ottobre 2013 a Boston:

    {
      "id": "VIDEO_ID",
      "recordingDetails": {
        "location": {
          "latitude": "42.3464",
          "longitude": "-71.0975"
        }
        "recordingDate": "2013-10-30T23:15:00.000Z"
      }
    }

    Per completare la richiesta in Explorer API, devi impostare il valore della proprietà id.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.update?
            part=snippet

Caricare un'immagine miniatura personalizzata e impostarla per un video

Puoi utilizzare il metodo thumbnails.set dell'API v3 per caricare un'immagine miniatura personalizzata e impostarla per un video. Nella richiesta, il valore del parametro videoId identifica il video per il quale verrà utilizzata la miniatura.

Questa query non può essere testata utilizzando Explorer API perché non supporta la possibilità di caricare file multimediali, un requisito per questo metodo.

Esempi di codice correlati: PHP, Python

Eliminare un video

Questo esempio mostra come eliminare un video. L'esempio prevede i seguenti passaggi:

  • Passaggio 1: recupera l'ID video

    Segui i passaggi precedenti per recuperare i video caricati del canale dell'utente attualmente autenticato. L'elenco potrebbe essere utilizzato per visualizzare un elenco di video, utilizzando l'ID di ogni video come chiave.

    Nota: esistono molti altri modi per ottenere gli ID video, ad esempio recuperando i risultati di ricerca o elencando gli elementi in una playlist. Tuttavia, poiché un video può essere eliminato solo dal suo proprietario, il recupero di un elenco di video di proprietà dell'utente che autorizza la richiesta dell'API è probabilmente il primo passo di questa procedura.

  • Passaggio 2: elimina un video

    Chiama il metodo videos.delete per eliminare un video specifico. Nella richiesta, il parametro id specifica l'ID video del video che stai eliminando. La richiesta deve essere autorizzata utilizzando OAuth 2.0. Se stai testando questa query in Explorer API, dovrai sostituire un ID video valido con il valore del parametro id.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.delete?
            id=VIDEO_ID
    

Segnalare un video con contenuti molesti

Questo esempio mostra come segnalare un video che contiene contenuti molesti. L'esempio prevede i seguenti passaggi:

  • Passaggio 1: recupera gli ID che spiegano perché il video viene segnalato

    Invia una richiesta autorizzata al metodo videoAbuseReportReasons.list per recuperare un elenco di motivi validi per segnalare un video. La risorsa videoAbuseReportReason di esempio riportata di seguito contiene informazioni per segnalare un video che contiene spam o contenuti ingannevoli.

    {
      "kind": "youtube#videoAbuseReportReason",
      "etag": "\"tbWC5XrSXxe1WOAx6MK9z4hHSU8/Or2VqBIilpHU7j__oPzUFCvGVBw\"",
      "id": "S",
      "snippet": {
        "label": "Spam or misleading",
        "secondaryReasons": [
          {
            "id": "27",
            "label": "Spam or mass advertising"
          },
          {
            "id": "28",
            "label": "Misleading thumbnail"
          },
          {
            "id": "29",
            "label": "Malware or phishing"
          },
          {
            "id": "30",
            "label": "Pharmaceutical drugs for sale"
          },
          {
            "id": "31",
            "label": "Other misleading info"
          }
        ]
      }
    }

    Come mostrato nella risorsa, questo motivo è associato a un elenco di motivi secondari. Quando segnali un video perché contiene spam, devi fornire l'ID del motivo e ti consigliamo vivamente di fornire anche un motivo secondario.

  • Passaggio 2: segnala il video per contenuti molesti

    Invia una richiesta autorizzata al metodo videos.reportAbuse per segnalare effettivamente il video. Il corpo della richiesta è un oggetto JSON che identifica sia il video segnalato sia il motivo della segnalazione. Come indicato nel passaggio 1, per alcuni tipi di motivi è supportato e consigliato un motivo secondario.

    La proprietà videoId dell'oggetto JSON identifica il video che viene segnalato.

    L'oggetto JSON di esempio riportato di seguito segnala un video perché contiene spam o contenuti ingannevoli e, più nello specifico, perché utilizza un'immagine miniatura fuorviante. Come mostrato nell'oggetto JSON di esempio riportato sopra, l'ID per i contenuti spam o fuorvianti è S. L'ID per una miniatura fuorviante è 28.

    {
      "videoId": "VIDEO_ID",
      "reasonId": "S",
      "secondaryReasonId": "28",
      "comments": "Testing the video flagging feature.",
      "language": "en"
    }

    La richiesta videos.reportAbuse deve essere autorizzata utilizzando OAuth 2.0. Il link riportato di seguito carica l'oggetto JSON riportato sopra in Explorer API. Per testare la query, devi sostituire un ID video valido con il valore della proprietà videoId. Ricorda che l'invio di questa richiesta segnalerà effettivamente il video.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.reportAbuse