Method: files.create

Faz o upload de um arquivo para uso em mensagens de mídia ou de cards avançados.

O agente fornece o URL ou o binário do arquivo e, opcionalmente, o URL do arquivo de miniatura correspondente.

Importante: para a privacidade e a segurança do usuário, a plataforma RBM faz o download e processa arquivos de mídia e PDF dos URLs fornecidos antes de enviá-los ao usuário. Isso impede o rastreamento de agentes por URLs exclusivos. Portanto, não envie um grande volume de URLs exclusivos. A plataforma RBM não oferece suporte a isso, independentemente de os URLs apontarem para os mesmos arquivos ou diferentes. Use o mesmo URL para arquivos idênticos.

A plataforma RBM armazena o arquivo em cache por 60 dias e retorna um nome exclusivo que pode ser usado para identificar o arquivo ao enviar mensagens de agente.

Para fazer upload de um arquivo binário, faça uma solicitação POST HTTP para o URI de upload, omita o campo fileUrl do corpo da solicitação JSON e especifique o binário como o corpo da solicitação POST. Por exemplo, use a flag --upload-file do cURL com o caminho de arquivo totalmente qualificado do arquivo binário.

Solicitação HTTP

  • URI de upload, para solicitações de upload de mídia:
    POST https://rcsbusinessmessaging.googleapis.com/upload/v1/files
  • URI de metadados, para solicitações somente de metadados:
    POST https://rcsbusinessmessaging.googleapis.com/v1/files

O URL usa a sintaxe de transcodificação gRPC.

Corpo da solicitação

O corpo da solicitação contém dados com a seguinte estrutura:

Representação JSON
{
  "fileUrl": string,
  "thumbnailUrl": string,
  "agentId": string
}
Campos
fileUrl

string

Opcional. URL do arquivo disponível publicamente. A plataforma RBM determina o tipo MIME do arquivo pelo campo "content-type" nos cabeçalhos HTTP ao buscar o arquivo. O RBM oferece suporte a imagens, áudio, vídeo e PDF.

Tipos de conteúdo de imagem aceitos: image/jpeg, image/jpg, image/gif, image/png.

Tipos de conteúdo de áudio aceitos: audio/aac, audio/mp3, audio/mpeg, audio/mpg, audio/mp4, audio/mp4-latm, audio/3gpp, application/ogg, audio/ogg.

Tipos de conteúdo de vídeo compatíveis: video/h263, video/m4v, video/mp4, video/mpeg, video/mpeg4, video/webm.

Tipos de conteúdo PDF aceitos: application/pdf.

Observação: o URL do arquivo pode ter um redirecionamento. Os URLs de arquivos redirecionados precisam ser acessíveis publicamente. Os redirecionamentos não são compatíveis com URLs de arquivos em CreateAgentMessageRequest.

thumbnailUrl

string

Opcional. URL de acesso público da miniatura correspondente ao arquivo. Se esse campo não for definido, a plataforma RBM vai gerar automaticamente uma miniatura do arquivo. A plataforma RBM determina o tipo MIME do arquivo pelo campo "content-type" nos cabeçalhos HTTP ao buscar o arquivo.

Tipos de conteúdo de imagem aceitos: image/jpeg, image/jpg, image/gif, image/png.

agentId

string

Obrigatório. O identificador exclusivo do agente.

Corpo da resposta

Um recurso de arquivo com um nome exclusivo que um agente pode usar para identificar o arquivo ao enviar mensagens.

Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:

Representação JSON
{
  "name": string
}
Campos
name

string

Nome exclusivo atribuído pelo servidor ao recurso de arquivo, que um agente pode usar para identificar o arquivo ao enviar mensagens. O formato é "files/{uid}", em que {uid} é um ID exclusivo.

Escopos de autorização

Requer o seguinte escopo OAuth:

  • https://www.googleapis.com/auth/rcsbusinessmessaging

Para mais informações, consulte OAuth 2.0 Overview.