建立新的使用者資料來源,並確保其所屬的所有資料來源都不重複。
資料來源是感應器資料的唯一來源,資料來源可能會揭露本機或隨附裝置的硬體感應器的原始資料。此外,也可以公開轉換或合併其他資料來源產生的衍生資料。相同資料類型可能會有多個資料來源。每個從 Fitness API 插入或讀取的每個資料集裡,每個資料點都有相關聯的資料來源。
每個資料來源都會產生一組不重複的資料集更新,其中包含專屬資料來源 ID。並非所有資料來源的變更都會影響資料串流 ID,因此由相同應用程式/裝置更新版本收集的資料仍可視為同一個資料來源。
資料來源為伺服器產生的字串,系統會根據建立的來源內容來識別。叫用這個方法時不應設定 dataStreamId
欄位。伺服器會自動以正確的格式產生檔案。如果設定了 dataStreamId
,就必須與伺服器產生的格式相符。這種格式是資料來源部分欄位的組合,具有特定順序。如果兩者不相符,要求就會失敗並傳回錯誤。
指定非已知類型 DataType (開頭為 com.google.") 將建立具有自訂資料類型的 DataSource。自訂資料類型僅供建立的應用程式讀取。自訂資料類型已淘汰,請改用標準資料類型。
除了資料來源 ID 中包含的資料來源欄位之外,開發人員建立號碼時也會完成驗證的開發人員專案編號。其他開發人員讀取公開資料類型時,對這個開發人員專案編號進行模糊處理。
立即試用。
要求
HTTP 要求
POST https://www.googleapis.com/fitness/v1/users/userId/dataSources
參數
參數名稱 | 值 | 說明 |
---|---|---|
路徑參數 | ||
userId |
string |
為已識別的使用者建立資料來源。使用 me 表示已驗證的使用者。目前僅支援 me 。
|
授權
此要求需要至少具備下列其中一個範圍的授權:
範圍 |
---|
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 |
詳情請參閱驗證與授權頁面。
要求主體
在要求內容中,請提供下列屬性的 Users.dataSources 資源:
資源名稱 | 值 | 說明 | 附註 |
---|---|---|---|
必要屬性 | |||
application |
nested object |
提供感應器資料至平台的應用程式相關資訊。 | |
application.name |
string |
這個應用程式的名稱。對 REST 用戶端來說,這是必要步驟,但我們不會強制使用這個名稱。它可供其他開發人員辨識,以便找出哪個 REST 建立應用程式或資料來源。 | |
dataType |
nested object |
資料類型定義了從 Fitness API 收集、插入或查詢的資料串流的結構定義。 | |
dataType.field[] |
list |
欄位代表資料類型的一個維度。 | |
dataType.field[].format |
string |
資料類型中每個欄位支援的不同格式。 可接受的值如下:
|
|
dataType.field[].name |
string |
用於定義資料的名稱和格式。與資料類型名稱不同,欄位名稱並非命名空間,而且只需要在資料類型中重複。 | |
dataType.name |
string |
每種資料類型都有不重複的命名空間名稱。系統會將 com.google 命名空間中的所有資料類型做為平台的一部分共用。 | |
device |
nested object |
代表可擁有感應器的整合式裝置 (例如手機或穿戴式裝置)。 | |
device.manufacturer |
string |
產品/硬體的製造商。 | |
device.model |
string |
使用者看到的裝置型號名稱。 | |
device.type |
string |
代表裝置類型的常數。 可接受的值如下:
|
|
device.uid |
string |
硬體的序號或其他專屬 ID。任何未建立資料來源的 REST 或 Android 用戶端讀取時,系統會對這個欄位進行模糊處理。只有資料來源建立者才能看到 uid 欄位,而且清楚明瞭。 模糊處理作業會維持相等性;也就是說,如果 id1 == id2,則模糊處理(id1) == obfuscated(id2)。 |
|
device.version |
string |
裝置硬體/軟體的版本字串。 | |
type |
string |
說明這個資料來源類型的常數。指出這個資料來源是否產生原始或衍生資料。 可接受的值如下:
|
回應
如果成功,此方法會在回應主體中傳回 Users.dataSources 資源。
試試看!
使用 APIs Explorer 針對即時資料呼叫這個方法,並查看回應。