Users.dataSources: update

Atualiza a fonte de dados especificada. O dataStreamId, dataType, type, dataStreamName e device propriedades, exceto version, não pode ser modificada.

As fontes são identificadas pelo dataStreamId. Faça um teste agora.

Solicitação

Solicitação HTTP

PUT https://www.googleapis.com/fitness/v1/users/userId/dataSources/dataSourceId

Parâmetros

Nome do parâmetro Valor Descrição
Parâmetros de caminho
dataSourceId string O ID do fluxo de dados da fonte a ser atualizada.
userId string Atualize a fonte de dados da pessoa identificada. Use o me para indicar o usuário autenticado. Este item é compatível apenas com me tempo de resposta.

Autorização

Esta solicitação requer autorização com pelo menos um dos seguintes escopos:

Escopo
https://www.googleapis.com/auth/fitness.activity.write
https://www.googleapis.com/auth/fitness.location.write
https://www.googleapis.com/auth/fitness.body.write
https://www.googleapis.com/auth/fitness.nutrition.write
https://www.googleapis.com/auth/fitness.blood_pressure.write
https://www.googleapis.com/auth/fitness.blood_glucose.write
https://www.googleapis.com/auth/fitness.oxygen_saturation.write
https://www.googleapis.com/auth/fitness.body_temperature.write
https://www.googleapis.com/auth/fitness.reproductive_health.write

Para mais informações, consulte a página de autenticação e autorização.

Corpo da solicitação

No corpo da solicitação, informe um recurso Users.dataSources com as seguintes propriedades:

Nome da propriedade Valor Descrição Observações
Propriedades obrigatórias
application nested object Informações sobre um aplicativo que alimenta os dados do sensor na plataforma.
application.name string O nome deste aplicativo. Isso é obrigatório para clientes REST, mas não aplicamos a exclusividade desse nome. Ele é fornecido como uma questão de conveniência para outros desenvolvedores que querem identificar qual REST criou um aplicativo ou fonte de dados.
dataStreamId string Um identificador exclusivo do fluxo de dados produzido por essa fonte de dados. O identificador inclui:

  • O fabricante, o modelo e o número de série (UID) do dispositivo físico.
  • O nome ou nome do pacote do aplicativo. O nome do pacote é usado quando a fonte de dados foi criada por um app Android. O número do projeto do desenvolvedor é usado quando a fonte de dados é criada por um cliente REST.
  • O tipo da fonte de dados.
  • O nome do fluxo da fonte de dados.
Nem todos os atributos da fonte de dados são usados como parte do identificador de stream. Mais especificamente, a versão do hardware/do aplicativo não é usada. Isso nos permite preservar o mesmo stream com atualizações de versão. Isso também significa que dois objetos DataSource podem representar o mesmo fluxo de dados, mesmo que não sejam iguais.

O formato exato do ID do fluxo de dados criado por um app Android é: type:dataType.name:application.packageName:device.manufacturer:device.model:device.uid:dataStreamName

O formato exato do ID do fluxo de dados criado por um cliente REST é: type:dataType.name:developer project number:device.manufacturer:device.model:device.uid:dataStreamName

Quando algum dos campos opcionais que compõem o ID do fluxo de dados estiver ausente, ele será omitido desse código. O ID de fluxo de dados mínimo viável seria: type:dataType.name:developer project number

Por fim, o número do projeto do desenvolvedor e o UID do dispositivo são ofuscados quando lidos por qualquer cliente REST ou Android que não tenha criado a fonte de dados. Somente o criador da fonte de dados vê o número do projeto do desenvolvedor de forma clara e normal. Isso significa que um cliente verá um conjunto de data_stream_ids diferente de outro cliente com credenciais distintas.

dataType nested object O tipo de dados define o esquema de um fluxo de dados que é coletado, inserido ou consultado na API Fitness.
dataType.field[] list Um campo representa uma dimensão de um tipo de dados.
dataType.field[].format string Os diferentes formatos suportados para cada campo em um tipo de dados.

Os valores aceitáveis são:
  • "blob"
  • "floatList"
  • "floatPoint"
  • "integer"
  • "integerList"
  • "map"
  • "string"
dataType.field[].name string Define o nome e o formato dos dados. Ao contrário dos nomes de tipo de dados, os nomes de campo não têm namespace e só precisam ser exclusivos dentro do tipo de dados.
dataType.name string Cada tipo de dados tem um nome exclusivo e com namespace. Todos os tipos de dados no namespace com.google são compartilhados como parte da plataforma.
device nested object Representação de um dispositivo integrado (como um smartphone ou um wearable) que pode conter sensores.
device.manufacturer string Fabricante do produto/hardware.
device.model string Nome do modelo visível para o usuário final do dispositivo.
device.type string Uma constante que representa o tipo do dispositivo.

Os valores aceitáveis são:
  • "chestStrap"
  • "headMounted"
  • "phone"
  • "scale"
  • "smartDisplay"
  • "tablet"
  • "unknown"
  • "watch"
device.uid string O número de série ou outro ID exclusivo do hardware. Esse campo é ofuscado quando lido por qualquer cliente REST ou Android que não tenha criado a fonte de dados. Somente o criador da fonte de dados verá o campo "uid" em formato claro e normal.

A ofuscação preserva a igualdade. ou seja, com dois IDs, if id1 == id2, expordo(id1) == oculto(id2).

device.version string String da versão do hardware/software do dispositivo.
type string Uma constante que descreve o tipo da fonte de dados. Indica se a fonte de dados produz dados brutos ou derivados.

Os valores aceitáveis são:
  • "derived"
  • "raw"

Resposta

Se for bem-sucedido, esse método retornará um recurso Users.dataSources no corpo da resposta.

Confira!

Use o APIs Explorer abaixo para chamar esse método em dados ativos e ver a resposta.