Le service Place Photo (nouveau) est une API en lecture seule qui vous permet d'ajouter du contenu photographique de haute qualité à votre application. Le service Place Photo vous donne accès à des millions de photos stockées dans la base de données Places.
Lorsque vous obtenez des informations sur un lieu à l'aide d'une requête Place Details, Nearby Search ou Text Search, vous pouvez également demander des ressources photo correspondant au contenu photographique. À l'aide du service Photo, vous pouvez ensuite accéder aux photos référencées et redimensionner l'image à la taille optimale pour votre application.
APIs Explorer vous permet d'envoyer des requêtes en direct afin que vous puissiez vous familiariser avec l'API et ses options:
EssayerRequêtes Place Photo
Une requête Place Photo est une requête HTTP GET envoyée à une URL au format suivant :https://places.googleapis.com/v1/NAME/media?key=API_KEY&PARAMETERS
Lorsque les paramètres suivants sont requis:
- NAME contient le nom de ressource de la photo.
- API_KEY contient la clé API.
- PARAMETERS contient le paramètre
maxHeightPx
, le paramètremaxWidthPx
ou les deux.
La liste complète des paramètres obligatoires et facultatifs est décrite ci-dessous.
Paramètres obligatoires
Nom de la photo
Identifiant sous forme de chaîne qui identifie une photo de manière unique. Les noms de photo sont renvoyés à partir d'une requête Place Details (New), Nearby Search (New) ou Text Search (New) dans la propriété name
de chaque élément du tableau photos[]
.
Pour obtenir un exemple, consultez Obtenir un nom de photo.
maxHeightPx et maxWidthPx
Spécifie la hauteur et la largeur maximales souhaitées pour l'image, en pixels. Si l'image est plus petite que les valeurs spécifiées, l'image d'origine est renvoyée. Si l'image est plus grande dans l'une ou l'autre des dimensions, elle est mise à l'échelle pour correspondre à la plus petite des deux dimensions, en respectant ses proportions d'origine. Les propriétés "maxheight" et "maxwidth" acceptent un nombre entier compris entre 1 et 4 800.
Vous devez spécifier maxHeightPx
, maxWidthPx
ou les deux.
Paramètres facultatifs
skipHttpRedirect
Si la valeur est false
(valeur par défaut), effectuez une redirection HTTP vers l'image pour la renvoyer.
Si la valeur est true
, ignorez la redirection et renvoyez une réponse JSON contenant les détails de l'image.
Exemple :
{ "name": "places/ChIJj61dQgK6j4AR4GeTYWZsKWw/photos/Aaw_FcKly0DEv3EWmDJyHiEqXIP5mowOc99lN1GzBun6KHH52AZ5fFA/media", "photoUri": "https://lh3.googleusercontent.com/a-/AD_cFT-b=s100-p-k-no-mo" }
Cette option est ignorée pour les requêtes autres que HTTP.
Obtenir un nom de photo
Toutes les requêtes envoyées au service Place Photo doivent inclure un nom de ressource photo, renvoyé dans la réponse à une requête Nearby Search, Text Search ou Place Details. La réponse à ces requêtes contient un tableau photos[]
si le lieu est associé à un contenu photographique.
Chaque élément de photo[]
contient les champs suivants:
name
: chaîne contenant le nom de ressource de la photo lorsque vous effectuez une requête de photo. Cette chaîne se présente sous la forme:places/PLACE_ID/photos/PHOTO_RESOURCE
heightPx
: hauteur maximale de l'image, en pixels.widthPx
: largeur maximale de l'image, en pixels.authorAttributions[]
: attributions requises. Ce champ est toujours présent, mais peut être vide.
Les photos renvoyées par le service Photo peuvent provenir de divers lieux, y compris les propriétaires d'établissement et les photos fournies par les utilisateurs. Dans la plupart des cas, ces photos peuvent être utilisées sans attribution ou contiendront l'attribution requise dans l'image. Toutefois, si l'élément photo
renvoyé inclut une valeur dans le champ authorAttributions
, vous devez inclure l'attribution supplémentaire dans votre application partout où vous affichez l'image.
L'exemple suivant montre une requête Place Details qui inclut photos
dans le masque de champ afin que la réponse comprenne le tableau photos[]
:
curl -X GET \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ -H "X-Goog-FieldMask: id,displayName,photos" \ https://places.googleapis.com/v1/places/ChIJ2fzCmcW7j4AR2JzfXBBoh6EVous trouverez ci-dessous un exemple de tableau
photos[]
dans la réponse.
... "photos" : [ { "name": "places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E/photos/AUacShh3_Dd8yvV2JZMtNjjbbSbFhSv-0VmUN-uasQ2Oj00XB63irPTks0-A_1rMNfdTunoOVZfVOExRRBNrupUf8TY4Kw5iQNQgf2rwcaM8hXNQg7KDyvMR5B-HzoCE1mwy2ba9yxvmtiJrdV-xBgO8c5iJL65BCd0slyI1", "widthPx": 6000, "heightPx": 4000, "authorAttributions": [ { "displayName": "John Smith", "uri": "//maps.google.com/maps/contrib/101563", "photoUri": "//lh3.googleusercontent.com/a-/AD_cFT-b=s100-p-k-no-mo" } ] }, ...
Demander une photo de lieu
L'exemple de requête ci-dessous renvoie une image à l'aide de sa ressource name
, en la redimensionnant pour qu'elle ne fasse pas plus de 400 pixels de haut et de large:
https://places.googleapis.com/v1/places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E/photos/AUacShh3_Dd8yvV2JZMtNjjbbSbFhSv-0VmUN-uasQ2Oj00XB63irPTks0-A_1rMNfdTunoOVZfVOExRRBNrupUf8TY4Kw5iQNQgf2rwcaM8hXNQg7KDyvMR5B-HzoCE1mwy2ba9yxvmtiJrdV-xBgO8c5iJL65BCd0slyI1/media?maxHeightPx=400&maxWidthPx=400&key=API_KEY
La réponse à une requête Place Photo réussie est une image. Le type de l'image dépend du type de la photo envoyée à l'origine.
Si votre requête dépasse votre quota disponible, le serveur renvoie un état HTTP 403 et affiche l'image ci-dessous pour indiquer que le quota a été dépassé:
![Image Dépassement du quota](https://developers.google.cn/static/maps/documentation/maps-static/images/quota.png?authuser=7&hl=fr)
Si le serveur ne comprend pas votre requête, il renvoie l'état HTTP 400, qui indique une requête non valide. Voici les raisons les plus courantes d'une requête non valide:
- Le nom de la photo envoyée n'a pas été spécifié correctement.
- La requête n'incluait pas le paramètre
maxHeightPx
ni le paramètremaxWidthPx
. - La valeur du paramètre
maxHeightPx
oumaxWidthtPx
a été définie surnull
. - Le
name
a expiré. Siname
expire, envoyez une requête à Place Details (New), Nearby Search (New) ou Text Search (New) pour obtenir un nouveauname
.
Essayer
APIs Explorer vous permet de créer des exemples de requêtes afin que vous puissiez vous familiariser avec l'API et ses options.
Pour envoyer une demande:
- Sélectionnez l'icône API
sur le côté droit de la page.
- Définissez le paramètre
name
sur :places/PLACE_ID/photos/PHOTO_RESOURCE/media
- Définissez
skipHttpRedirect
surtrue
pour que la requête renvoie une réponse JSON. Par défaut, la requête renvoie l'image, qui ne peut pas être affichée par l'explorateur d'API. - Sélectionnez le bouton Execute (Exécuter). Dans le pop-up, sélectionnez le compte que vous souhaitez utiliser pour effectuer la demande.
Dans le panneau APIs Explorer, sélectionnez l'icône de développement
pour développer la fenêtre de l'explorateur d'API.