Você pode usar a API Google My Business para fazer o upload de mídia com os dois métodos a seguir:
Upload usando um URL
Se quiser fazer o upload de fotos usando um URL, realize a seguinte chamada para Media.Create. Utilize a category relevante conforme necessário.
POST https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/media
{
"mediaFormat": "PHOTO",
"locationAssociation": {
"category": "COVER"
},
"sourceUrl": “http://example.com/biz/image.jpg",
}Se quiser fazer o upload de vídeos usando um URL com a API Google My Business, realize a seguinte chamada para Media.Create:
POST https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/media
{
"mediaFormat": "VIDEO",
"locationAssociation": {
"category": "ADDITIONAL"
},
"sourceUrl": “http://example.com/biz/video.mp4",
}Upload usando bytes
Para fazer o upload de mídia usando bytes com a API Google My Business, siga estas etapas:
Para iniciar o upload, faça a seguinte chamada:
POST https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/media:startUpload
A resposta da API retorna um corpo que contém
MediaItemDataRef:{ "resourceName": "GoogleProvidedValue", }Para fazer o upload dos bytes, use o
resourceNameretornado pela chamada realizada na etapa anterior. Veja a seguir um exemplo em que a mídia enviada é uma foto:curl -X POST -T ~/Downloads/pictureToUpload.jpg "https://mybusiness.googleapis.com/upload/v1/media/{GoogleProvidedValue}?upload_type=media"
Veja a seguir um exemplo em que a mídia é um vídeo:
curl -X POST -T ~/Downloads/videoToUpload.mp4 "https://mybusiness.googleapis.com/upload/v1/media/{GoogleProvidedValue}?upload_type=media"
Use o
resourceNameretornado na etapa 1 para chamarMedia.Create. Use o mediaFormat e a category relevantes.POST https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/media { "mediaFormat": "PHOTO", "locationAssociation": { "category": "COVER" }, "dataRef": { "resourceName": "GoogleProvidedValue" }, }POST https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/media { "mediaFormat": "VIDEO", "locationAssociation": { "category": "ADDITIONAL" }, "dataRef": { "resourceName": "GoogleProvidedValue" }, }