L'API Google Play Developer Reply to Reviews ti consente di visualizzare il feedback degli utenti relative alla tua app e rispondi a questo feedback. Puoi utilizzare questa API per interagire agli utenti direttamente dal toolkit esistente per l'assistenza clienti, ad esempio un sistema CRM di un sistema operativo completo.
L'API Reply to Reviews ti consente di accedere al feedback solo per la produzione o versioni successive della tua app. Se desideri ricevere feedback sulle versioni alpha o beta di usa Google Play Console. Inoltre, tieni presente che l'API mostra solo le recensioni che includono commenti. Se un utente valuta la tua app, ma non fornire un commento, il suo feedback non è accessibile dall'API.
Ottenere l'accesso
Per lavorare con l'API Reply to Reviews, devi fornire l'autorizzazione utilizzando una Client OAuth o di servizio. Se utilizzi un account di servizio, abilita il "Rispondi alle recensioni" autorizzazione all'interno di questo account. Per ulteriori informazioni stabilire l'accesso autorizzato a questa API, consulta Configurazione dei Client di Accesso API.
Recupero di recensioni in corso
Quando usi l'API Reply to Reviews, puoi recuperare un elenco di tutte le recensioni della tua app o una singola recensione.
Recupero di un insieme di recensioni
Utilizza il metodo GET
per richiedere un elenco di recensioni per la tua app. Nella tua richiesta,
includi il nome completo del pacchetto dell'app, ad esempio
com.google.android.apps.maps
: e il token di autorizzazione ricevuto quando
ottenere l'accesso all'API.
GET https://www.googleapis.com/androidpublisher/v3/applications/your_package_name/reviews? access_token=your_auth_token
La risposta è una stringa JSON contenente un elenco di recensioni relative alla tua app. La il primo risultato nell'elenco mostra il commento creato più di recente da un utente o modificati.
Nell'esempio seguente, la prima recensione mostra i metadati che compaiono in tutte e la seconda mostra metadati che appaiono solo in alcuni risultati:
{ "reviews": [ { "reviewId": "12345678", "authorName": "Jane Bloggs", "comments": [ { "userComment": { "text": "This is the best app ever!", "lastModified": { "seconds": "1443676826", "nanos": 713000000 }, "starRating": 5 } } ] }, { "reviewId": "11223344", "authorName": "John Doe", "comments": [ { "userComment": { "text": "I love using this app!", "lastModified": { "seconds": "141582134", "nanos": 213000000 }, "starRating": 5, "reviewerLanguage": "en", "device": "trltecan", "androidOsVersion": 21, "appVersionCode": 12345, "appVersionName": "1.2.3", "thumbsUpCount": 10, "thumbsDownCount": 3, "deviceMetadata": { "productName": "E5333 (Xperia™ C4 Dual)", "manufacturer": "Sony", "deviceClass": "phone", "screenWidthPx": 1080, "screenHeightPx": 1920, "nativePlatform": "armeabi-v7a,armeabi,arm64-v8a", "screenDensityDpi": 480, "glEsVersion": 196608, "cpuModel": "MT6752", "cpuMake": "Mediatek", "ramMb": 2048 } } }, { "developerComment": { "text": "That's great to hear!", "lastModified": { "seconds": "1423101467", "nanos": 813000000 } } } ] } ], "tokenPagination": { "nextPageToken": "12334566" } }
Ogni risultato include i seguenti metadati:
- reviewId
- Identifica in modo univoco questa recensione. Indica anche la perché gli utenti possono scrivere una sola recensione per una determinata app.
- authorName
Il nome dell'utente che scrive la recensione.
Nota: in rari casi,
authorName
potrebbe non vengono visualizzati in un determinato risultato.- commenti
Un elenco che include il feedback dell'utente sull'app. Se questo La recensione include un titolo, questo titolo e il testo del corpo della recensione appaiono entrambi nell'elemento
text
e un carattere di tabulazione separa il titolo e il corpo del testo. L'elementolastModified
indica l'ora in cui l'utente ha effettuato più di recente ha inviato la propria recensione.Se hai già risposto a questa recensione, il tuo feedback verrà visualizzato come secondo elemento nell'elenco dei commenti.
- starRating
La valutazione dell'utente della tua app su una scala da 1 a 5. Un punteggio di 5. indica che l'utente è molto soddisfatto della tua app.
Per impostazione predefinita, in ogni pagina vengono visualizzate 10 recensioni. Puoi visualizzare fino a 100 recensioni
per pagina impostando il parametro maxResults
nella richiesta.
Se l'elenco delle recensioni continua su un'altra pagina, l'API include una
Elemento tokenPagination
nella risposta. Quando richiedi la pagina successiva di
recensioni, includono l'elemento token
. Imposta il valore di questo elemento su
nextPageToken
, che compare nella risposta originale.
Nota: puoi recuperare solo le recensioni create dagli utenti. o modificati nell'ultima settimana. Se vuoi recuperare tutte le recensioni per il tuo app dall'inizio, puoi scaricare le recensioni come file CSV utilizzando Google Play Console.
Il seguente esempio di richiesta GET
mostra la pagina successiva di recensioni. Questo
suppone che la pagina corrente delle recensioni (come mostrato nella risposta
la richiesta precedente) contiene un valore nextPageToken
pari a "12334566"
. La
indica anche che nella pagina successiva devono essere visualizzate fino a 50 recensioni.
GET https://www.googleapis.com/androidpublisher/v3/applications/your_package_name/reviews? access_token=your_auth_token&token=12334566&maxResults=50
Recupero di una singola recensione
Puoi anche utilizzare il metodo GET
per recuperare una singola recensione. Tu fornisci
lo stesso URL utilizzato per
il recupero di un insieme di recensioni, con la differenza che
Includi anche i review_id
corrispondenti alla recensione che vuoi visualizzare:
GET https://www.googleapis.com/androidpublisher/v3/applications/your_package_name/reviews/ review_id?access_token=your_auth_token
La risposta corrispondente è una stringa JSON contenente contenuti e metadati per una singola recensione:
{ "reviewId": "87654321", "authorName": "Joan Smith", "comments": [ { "userComment": { "text": "This app is awesome!", "lastModified": { "seconds": "1452114723", "nanos": 913000000 }, "starRating": 5 } } ] }
Traduzione del testo delle recensioni
Il testo della recensione può essere tradotto automaticamente prima di essere restituito dal
l'API delle recensioni. Quando scarichi un elenco di recensioni o una singola recensione, aggiungi
un parametro translationLanguage
alla query. Ad esempio:
GET https://www.googleapis.com/androidpublisher/v3/applications/your_package_name/reviews? access_token=your_auth_token&translationLanguage=en
Il parametro translationLanguage
può specificare una lingua con o senza
paese. Ad esempio, "en" e "en_GB" sono validi.
Se specifichi una lingua di traduzione diversa da quella originale
testo tradotto, il sistema restituisce il testo tradotto nella proprietà text
e
testo originale nella proprietà originalText
. Ecco un esempio:
{ "reviewId": "12345678", "authorName": "Jane Bloggs", "comments": [ { "userComment": { "text": "This is the best app ever!", "lastModified": { "seconds": "1443676826", "nanos": 713000000 }, "starRating": 5, "originalText": "Dies ist die beste App überhaupt!" } } ] }
Rispondere alle recensioni
Puoi anche interagire con gli utenti della tua app rispondendo alle loro recensioni. Dopo il giorno invii la tua risposta, l'utente riceve una notifica che indica che hanno risposto al loro feedback.
scoraggiamo l'utilizzo di risposte automatiche alle recensioni, con l'intento di aggiornare manualmente le risposte in un secondo momento. Inoltre, anche se puoi rispondere a una recensione tutte le volte che vuoi, l'utente riceve solo una notifica Dopo la prima risposta a una recensione creata o modificata. Le seguenti che illustra in che modo l'utente viene avvisato durante le tue interazioni con l'utente:
Interazione utente-sviluppatore | Notifica inviata all'utente? |
---|---|
L'utente scrive una recensione; lo sviluppatore invia la risposta | Sì |
Gli aggiornamenti per gli sviluppatori rispondono alla recensione originale | No |
Revisione degli aggiornamenti utente; risposta agli aggiornamenti per gli sviluppatori | Sì |
Nota: poiché le tue risposte alle recensioni vengono visualizzate pubblicamente sul nella pagina dello store, è importante non includere informazioni sensibili sugli utenti quando scrivi queste risposte.
Per inviare una risposta alla recensione di un utente, utilizza il metodo POST
. Nella tua richiesta,
indica che Content-Type
è application/json
e includi un file JSON
documento contenente la tua risposta:
POST https://www.googleapis.com/androidpublisher/v3/applications/your_package_name/reviews/ review_id:reply?access_token=your_access_token Content-Type: application/json { "replyText": "Thanks for your feedback!" }
Nota: i replyText
che includi nel tuo
La richiesta POST
può contenere al massimo 350 caratteri. Dovresti usare
testo normale nella risposta; i tag HTML ben strutturati vengono rimossi e non vengono
incluso nel numero di caratteri della tua risposta. I contenuti che posizioni
all'interno di tag HTML ben strutturati viene comunque mantenuta.
Se la richiesta ha esito positivo, riceverai la seguente stringa JSON in risposta.
L'elemento lastEdited
indica il momento in cui l'API registra la tua risposta.
alla recensione dell'utente.
{ "result": { "replyText": "Thanks for your feedback!", "lastEdited": { "seconds": "1453978803", "nanos": 796000000 } } }
Se la richiesta POST
non è valida, tuttavia, la risposta mostra uno dei
i seguenti codici di errore:
400 Bad Reply Request
replyText
è troppo lungo o mancante.404 Not Found
- La recensione con l'elemento
review_id
specificato non esiste.
Quote
A titolo di cortesia per altri sviluppatori, l'API Reply to Reviews prevede l'applicazione di quote. Queste quote vengono applicate separatamente per ogni app:
GET
richieste (per il recupero di elenchi di recensioni e singole recensioni): 200 all'oraPOST
richieste (per rispondere alle recensioni): 2000 al giorno
Se la tua app deve recuperare o rispondere a un volume più elevato di recensioni rispetto a queste le quote di archiviazione consentono, invia un richiesta per aumentare la quota della tua app.