comments.markAsSpam
non è più supportato.
I seguenti esempi mostrano come utilizzare l'API di dati di YouTube (v3) per eseguire funzioni relative ai commenti.
Recupera i commenti di un video
Per recuperare un elenco di thread di commenti per un video, chiama il metodo commentThreads.list
. Imposta i seguenti valori dei parametri nella richiesta:
-
part
: imposta il valore del parametro susnippet
se vuoi recuperare solo i commenti di primo livello o susnippet,replies
se vuoi recuperare anche le risposte ai commenti di primo livello. Tieni presente che una risorsacommentThread
non contiene necessariamente tutte le risposte a un commento e devi utilizzare il metodocomments.list
se vuoi recuperare tutte le risposte per un determinato commento. -
videoId
: specifica l'ID video di YouTube del video per il quale stai recuperando i commenti.
La richiesta che segue recupera le risposte ai commenti e i commenti relativi al video del discorso di apertura alla conferenza Google I/O 2014, che ha l'ID video wtLJPvx7-ys
.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.list? part=snippet,replies &videoId=wtLJPvx7-ys
Recuperare i commenti su un canale o associati a quest'ultimo
L'API supporta la possibilità di recuperare i thread di commenti relativi a un canale o di tutti i thread di commenti associati a un canale. Nel secondo caso, l'API potrebbe contenere commenti sul canale o su qualsiasi video del canale.
- Per recuperare i commenti su un canale, segui le istruzioni per il recupero dei commenti per un video. Tuttavia, invece di impostare il parametro
videoId
, imposta il parametrochannelId
per identificare il canale. - Per recuperare i commenti associati a un canale, segui le istruzioni per recuperare i commenti di un video. Tuttavia, invece di impostare il parametro
videoId
, imposta il parametroallThreadsRelatedToChannelId
per identificare il canale.
La richiesta seguente recupera tutti i thread di commenti associati al canale YouTube GoogleDevelopers:
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.list? part=snippet,replies &allThreadsRelatedToChannelId=UC_x5XG1OV2P6uZZ5FSM9Ttw
Aggiunta di un commento
Richiama il metodo commentThreads.insert
per aggiungere un nuovo commento di primo livello a un canale o a un video. Imposta il valore parametro part
della richiesta su snippet
. Il corpo della richiesta è un elemento commentThread resource
in cui la proprietà snippet.topLevelComment[].snippet[].textOriginal
contiene il testo del commento. Questa richiesta deve essere autorizzata utilizzando OAuth 2.0.
- Per aggiungere un commento a un canale, utilizza la proprietà
snippet.channelId
per identificare il canale. - Per aggiungere un commento a un video, utilizza la proprietà
snippet.channelId
per identificare il canale che ha caricato il video. Utilizza anche la proprietàsnippet.videoId
per identificare il video.
La seguente richiesta di esempio consente di aggiungere un commento a un video.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.insert? part=snippet
La richiesta inserisce la risorsa mostrata di seguito.
{ "snippet": { "channelId": "UC_x5XG1OV2P6uZZ5FSM9Ttw", "topLevelComment": { "snippet": { "textOriginal": "This video is awesome!" } }, "videoId": "MILSirUni5E" } }
Rispondere a un commento
Chiama il metodo comments.insert
per rispondere a un commento. Imposta il valore parametro part
della richiesta su snippet
. Il corpo della richiesta è un elemento comment resource
in cui la proprietà snippet.textOriginal
contiene il testo del commento. La proprietà snippet.parentId
identifica il commento associato alla risposta e il suo valore è commentThread resource's ID
. Questa richiesta deve essere autorizzata utilizzando OAuth 2.0.
La seguente richiesta di esempio aggiunge una risposta a un commento esistente.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.insert? part=snippet
La richiesta inserisce la risorsa mostrata di seguito. Per eseguire la richiesta in Explorer API, utilizza il valore della proprietà snippet.parentId
per identificare il commento di primo livello associato alla risposta. In una risorsa commentThread
, la proprietà snippet.topLevelComment[].id
specifica l'ID univoco della risorsa.
{ "snippet": { "parentId": "COMMENT_THREAD_ID", "textOriginal": "That is true." } }
Aggiornare un commento principale o una risposta a un commento
Per aggiornare il testo di un commento di primo livello o di una risposta a un commento di primo livello, chiama il metodo comments.update
. Imposta il valore del parametro part
su snippet
. Nel corpo della richiesta, la proprietà id
identifica il commento che stai modificando e il nuovo testo del commento.
- In una risorsa
commentThread
, che identifica un commento di primo livello, la proprietàsnippet.topLevelComment[].id
specifica l'ID univoco del commento. - In una risorsa
comment
, che può identificare un commento di primo livello o una risposta a un commento, la proprietàid
specifica l'ID univoco del commento.
La richiesta di esempio riportata di seguito aggiorna il testo di un commento esistente.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.update? part=snippet
Il corpo della richiesta contiene lo snippet JSON mostrato di seguito. Per eseguire la richiesta in Explorer API, imposta il valore della proprietà id
per identificare il commento che stai aggiornando. La richiesta deve essere autorizzata dall'autore del commento.
{ "id": "COMMENT_ID", "snippet": { "textOriginal": "That is true." } }
Impostare lo stato di moderazione di un commento
Per impostare lo stato di moderazione di un commento, chiama il metodo comments.setModerationStatus
. Questa azione viene utilizzata quando il proprietario di un canale modera i commenti sul canale o sui video del canale.
Quando chiami questo metodo, imposta il valore del parametro id
per identificare il commento. Inoltre, imposta il parametro moderationStatus
sullo stato desiderato. Lo stato di un commento può essere modificato solo dal proprietario del canale in cui viene visualizzato.
-
Passaggio 1: recupera i commenti in attesa di revisione
Richiama il metodo
commentThreads.list
per recuperare i commenti relativi al canale o al video. Imposta il valore del parametromoderationStatus
suheldForReview
. La risposta dell'API può essere utilizzata per mostrare un elenco di commenti, con un'opzione che consente al proprietario del canale di pubblicare o rifiutare ciascuno di essi. -
Passaggio 2: aggiorna lo stato di moderazione di un commento
Richiama il metodo
comments.setModerationStatus
per aggiornare lo stato del commento. Utilizza il valore del parametroid
per specificare l'ID univoco del commento. Imposta il parametromoderationStatus
supublished
orejected
. Se rifiuti un commento, puoi anche impostare il parametrobanAuthor
sutrue
per impedire all'autore di aggiungere ulteriori commenti sul canale o sul video.
Nota:l'API non fornisce un modo per elencare o individuare in altro modo i commenti rifiutati. Tuttavia, puoi comunque cambiare lo stato di moderazione di un commento rifiutato impostandolo su published
se l'ID univoco del commento è noto. Inoltre, una volta che lo stato di moderazione di un commento viene aggiornato a published
o rejected
, non è più possibile ripristinare heldForReview
lo stato di moderazione.
Rimuovere un commento
Questo esempio mostra come eliminare un commento. L'esempio prevede i seguenti passaggi:
-
Passaggio 1: recupera l'ID del commento
Segui i passaggi precedenti per recuperare un elenco di commenti per un video o un canale. Ricorda che un commento può essere eliminato solo dal suo autore, quindi dovrai confrontare il valore della proprietà
snippet.authorChannelId.value
di una risorsacomment
con l'ID canale dell'utente autenticato per determinare se l'utente può eliminare quel commento specifico. -
Passaggio 2: elimina il commento o il thread dei commenti
Una volta identificato l'ID del thread di commenti o del commento che stai eliminando, chiama il metodo
comments.delete
per eliminarlo. Utilizza il valore parametroid
per identificare l'ID del commento o l'ID del thread del commento che stai eliminando. La richiesta deve essere autorizzata utilizzando OAuth 2.0. Se stai testando questa query in Explorer API, dovrai sostituire un ID commento o ID thread di commenti validi con il valore del parametroid
nella richiesta seguente.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.delete? id=COMMENT_ID