Users.dataSources: create

Cria uma nova fonte de dados exclusiva em todas as fontes de dados deste usuário.

Uma fonte de dados é uma fonte única de dados do sensor. As fontes de dados podem expor dados brutos provenientes de sensores de hardware em dispositivos locais ou complementares. Eles também podem expor dados derivados, criados ao transformar ou mesclar outras fontes de dados. Várias fontes de dados podem existir para o mesmo tipo de dados. Cada ponto de dados em cada conjunto de dados inserido ou lido da API Fitness tem uma fonte de dados associada.

Cada fonte de dados produz um stream exclusivo de atualizações de conjuntos de dados, com um identificador exclusivo. Nem todas as mudanças na fonte de dados afetam o ID do fluxo. Assim, os dados coletados por versões atualizadas do mesmo aplicativo/dispositivo ainda poderão ser considerados pertencentes à mesma fonte de dados.

As origens de dados são identificadas usando uma string gerada pelo servidor com base no conteúdo da origem que está sendo criada. O campo dataStreamId não pode ser definido ao invocar esse método. Ele será gerado automaticamente pelo servidor com o formato correto. Se um dataStreamId for definido, ele precisará corresponder ao formato gerado pelo servidor. Esse formato é uma combinação de alguns campos da fonte de dados e tem uma ordem específica. Se não corresponder, a solicitação falhará com um erro.

Especificar um DataType que não é um tipo conhecido (começando com "com.google.") criará um DataSource com um tipo de dados personalizado. Os tipos de dados personalizados só podem ser lidos pelo aplicativo que os criou. Os tipos de dados personalizados foram descontinuados. Em vez disso, use tipos de dados padrão.

Além dos campos da fonte de dados incluídos no ID da fonte de dados, o número do projeto do desenvolvedor que é autenticado ao criar a fonte de dados é incluído. Esse número do projeto de desenvolvedor é ofuscado quando lido por outros desenvolvedores que leem tipos de dados públicos. Faça um teste.

Solicitação

Solicitação HTTP

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

Parâmetros

Nome do parâmetro Valor Descrição
Parâmetros de caminho
userId string Crie a fonte de dados para a pessoa identificada. Use me para indicar o usuário autenticado. No momento, somente me é compatível.

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, forneça 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 dados do sensor na plataforma.
application.name string O nome deste aplicativo. Isso é necessário para clientes REST, mas não aplicamos exclusividade desse nome. Esse recurso é de conveniência para outros desenvolvedores que querem identificar qual REST criou um aplicativo ou uma fonte de dados.
dataType nested object O tipo de dado define o esquema de um stream 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 compatíveis com 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 tipos de dados, os nomes de campos não têm namespaces e só precisam ser exclusivos dentro do tipo de dados.
dataType.name string Cada tipo de dados tem um nome exclusivo 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 smartphone ou 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 para o 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 para o hardware. Esse campo é ofuscado quando lido por qualquer cliente REST ou Android que não criou 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, considerando dois IDs, se id1 == id2, obfuscated(id1) == obfuscated(id2).

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

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

Resposta

Se for bem-sucedido, este 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.