Implementazione: video

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

Recuperare i video caricati da un canale

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

Questo esempio mostra come recuperare un elenco dei video più popolari di YouTube, che vengono 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. Quando recuperi questo elenco, puoi anche impostare uno o entrambi i seguenti parametri:

  • regionCode: indica all'API di restituire un elenco di video per la regione specificata.
  • videoCategoryId: identifica la categoria di video per cui è necessario recuperare i video più popolari.

La richiesta seguente recupera i video sportivi più popolari in Spagna:

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

Carica un video

Dal momento che Explorer API non supporta il caricamento di file, questa descrizione non rimanda a un esempio eseguibile. Le seguenti risorse ti aiuteranno a modificare la tua applicazione in modo che possa caricare video utilizzando l'API v3:

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

  • La guida ai caricamenti ripristinabili spiega la sequenza delle richieste HTTP utilizzate da un'applicazione per caricare video utilizzando un processo di caricamento ripristinabile. Questa guida è rivolta principalmente agli sviluppatori che non possono utilizzare le librerie client delle API di Google, alcune delle quali forniscono un supporto nativo per i caricamenti ripristinabili.

  • L'esempio JavaScript per il caricamento di un video utilizza CORS (condivisione delle risorse multiorigine) per dimostrare 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 dimostra come controllare lo stato di un video caricato recuperando la parte processingDetails della risorsa video e come gestire le modifiche di stato per il 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 API conterrà una risorsa video che identifica l'ID video univoco per il 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 al passaggio 1. Imposta il valore del parametro part su processingDetails.

    Se la richiesta viene gestita correttamente, la risposta 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à diventerà diverso da processing, ad esempio succeeded o failed, al termine dell'elaborazione del video da parte di YouTube.

    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 seguente 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, la tua applicazione potrebbe creare un bollettino o procedere con un'altra azione subordinata allo stato del video.

Aggiorna 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 per il canale dell'utente attualmente autenticato. Può essere utilizzato per visualizzare un elenco di video, utilizzando l'ID di ogni video come chiave.

    Nota:esistono altri modi per ottenere gli ID dei video, come il recupero dei risultati di ricerca o l'inserimento degli elementi di una playlist. Tuttavia, poiché un video può essere aggiornato solo dal relativo proprietario, il recupero di un elenco di video di proprietà dell'utente che autorizza la richiesta API è probabilmente il primo passo da svolgere in questo processo.

  • 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 dal campo dell'aggiornamento dei metadati.

    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

Carica una miniatura personalizzata e impostala per un video

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

Questa query non può essere testata utilizzando Explorer API perché Explorer API non supporta la possibilità di caricare file multimediali, che è un requisito di 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 per il canale dell'utente attualmente autenticato. Può essere utilizzato per visualizzare un elenco di video, utilizzando l'ID di ogni video come chiave.

    Nota:esistono altri modi per ottenere gli ID dei video, come il recupero dei risultati di ricerca o l'inserimento degli elementi di una playlist. Tuttavia, poiché un video può essere eliminato solo dal proprietario, è probabile che il recupero dell'elenco dei video di proprietà dell'utente che autorizzi la richiesta API sia 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 tramite 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 offensivo

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

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

    Invia una richiesta autorizzata al metodo videoAbuseReportReasons.list per recuperare un elenco di motivi validi per segnalare un video. La risorsa di esempio videoAbuseReportReason riportata di seguito contiene informazioni per segnalare un video che include 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 per contenuti di spam, devi fornire l'ID della motivazione e ti consigliamo vivamente di fornire un motivo secondario.

  • Passaggio 2: segnala il video per contenuti illeciti

    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, un motivo secondario è supportato e fortemente consigliato.

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

    L'oggetto JSON di esempio riportato di seguito segnala un video per la presenza di spam o contenuti fuorvianti e, più precisamente, per l'utilizzo di un'immagine in miniatura fuorviante. Come mostrato nell'oggetto JSON di esempio riportato sopra, l'ID per i contenuti Spam o fuorvianti è S. L'ID di 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 tramite OAuth 2.0. Il link di seguito carica l'oggetto JSON qui sopra in Explorer API. Per testare la query, devi sostituire un ID video valido con il valore della proprietà videoId. Tieni presente che l'invio di questa richiesta segnala il video.

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