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 chamar- Media.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" }, }