Users.dataSources: create

एक ऐसा नया डेटा सोर्स बनाता है जो इस उपयोगकर्ता से जुड़े सभी डेटा सोर्स से अलग हो.

डेटा सोर्स, सेंसर डेटा का यूनीक सोर्स होता है. डेटा सोर्स, लोकल या कंपैनियन डिवाइसों पर हार्डवेयर सेंसर से आने वाला रॉ डेटा दिखा सकते हैं. वे दूसरे डेटा सोर्स को बदलकर या मर्ज करके बनाए गए डेटा को भी दिखा सकते हैं. एक ही तरह के डेटा के लिए, कई डेटा सोर्स मौजूद हो सकते हैं. Fitness API में डाले गए या उससे पढ़े गए हर डेटासेट में मौजूद हर डेटा पॉइंट से एक डेटा सोर्स जुड़ा होता है.

हर डेटा सोर्स, एक यूनीक डेटा सोर्स आइडेंटिफ़ायर के साथ डेटासेट अपडेट की एक यूनीक स्ट्रीम बनाता है. डेटा सोर्स में किए जाने वाले सभी बदलाव, डेटा स्ट्रीम आईडी पर असर नहीं डालते. इस वजह से, एक ही ऐप्लिकेशन/डिवाइस के अपडेट किए गए वर्शन से इकट्ठा किए गए डेटा को अब भी एक ही डेटा सोर्स से जुड़ा माना जा सकता है.

डेटा सोर्स की पहचान, सर्वर से जनरेट की गई स्ट्रिंग का इस्तेमाल करके की जाती है. यह पहचान, बनाए जा रहे सोर्स के कॉन्टेंट के आधार पर की जाती है. इस तरीके को शुरू करते समय, dataStreamId फ़ील्ड को सेट नहीं किया जाना चाहिए. यह सर्वर सही फ़ॉर्मैट के साथ अपने-आप जनरेट करेगा. अगर dataStreamId सेट है, तो यह सर्वर से जनरेट होने वाले फ़ॉर्मैट से मैच होना चाहिए. यह फ़ॉर्मैट, डेटा सोर्स के कुछ फ़ील्ड का कॉम्बिनेशन होता है और इसका एक खास क्रम होता है. अगर यह मेल नहीं खाता है, तो अनुरोध एक गड़बड़ी के साथ विफल हो जाएगा.

अगर किसी ऐसे डेटा टाइप के बारे में बताना है जो आम तौर पर उपलब्ध नहीं है (जिस तरह का डेटा "com.google." से शुरू होता है), तो कस्टम डेटा टाइप वाला डेटा सोर्स बन जाएगा. कस्टम डेटा टाइप को सिर्फ़ उसी ऐप्लिकेशन से पढ़ा जा सकता है जिसने उन्हें बनाया है. कस्टम डेटा टाइप अब काम नहीं करते. इसके बजाय, स्टैंडर्ड डेटा टाइप का इस्तेमाल करें.

डेटा सोर्स आईडी में शामिल डेटा सोर्स फ़ील्ड के अलावा, डेटा सोर्स बनाते समय पुष्टि किया गया डेवलपर प्रोजेक्ट नंबर भी शामिल होता है. जब कोई अन्य डेवलपर, सार्वजनिक डेटा टाइप को पढ़ता है, तब यह डेवलपर प्रोजेक्ट नंबर छिपा दिया जाता है. इसे अभी आज़माएं.

अनुरोध

एचटीटीपी अनुरोध

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 किसी डेटा टाइप में हर फ़ील्ड के लिए, इस्तेमाल किए जा सकने वाले अलग-अलग फ़ॉर्मैट.

इन वैल्यू को इस्तेमाल किया जा सकता है:
  • "blob"
  • "floatList"
  • "floatPoint"
  • "integer"
  • "integerList"
  • "map"
  • "string"
dataType.field[].name string इससे डेटा का नाम और फ़ॉर्मैट तय होता है. डेटा टाइप के नामों के उलट, फ़ील्ड के नाम नेमस्पेस नहीं होते. ये सिर्फ़ डेटा टाइप में अलग-अलग होने चाहिए.
dataType.name string हर डेटा टाइप का एक यूनीक और नेमस्पेस होता है. साथ ही, उसे नाम दिया जाता है. com.google नेमस्पेस में सभी डेटा टाइप, प्लैटफ़ॉर्म के हिस्से के तौर पर शेयर किए जाते हैं.
device nested object इंटिग्रेट किए गए ऐसे डिवाइस (जैसे कि फ़ोन या पहने जाने वाला डिवाइस) जो सेंसर को होल्ड कर सकता है.
device.manufacturer string प्रॉडक्ट/हार्डवेयर का निर्माता.
device.model string डिवाइस के असली उपयोगकर्ता को दिखने वाले मॉडल का नाम.
device.type string डिवाइस के टाइप को दिखाने वाला कॉन्स्टेंट.

इन वैल्यू को इस्तेमाल किया जा सकता है:
  • "chestStrap"
  • "headMounted"
  • "phone"
  • "scale"
  • "smartDisplay"
  • "tablet"
  • "unknown"
  • "watch"
device.uid string हार्डवेयर का सीरियल नंबर या अन्य यूनीक आईडी. जिस REST या Android क्लाइंट ने डेटा सोर्स नहीं बनाया है उसके ज़रिए पढ़े जाने पर, यह फ़ील्ड अस्पष्ट हो जाता है. uid फ़ील्ड, सिर्फ़ डेटा सोर्स बनाने वाले को साफ़ और सामान्य फ़ॉर्म में दिखेगा.

अस्पष्ट बनाने से, बराबरी का मौका बना रहता है. इसका मतलब है कि अगर id1 == id2, obfuscated(id1) == obfuscated(id2) दो आईडी दी जाती हैं, तो यह बराबरी का होगा.

device.version string डिवाइस हार्डवेयर/सॉफ़्टवेयर के लिए वर्शन स्ट्रिंग.
type string इस डेटा सोर्स के टाइप की जानकारी देने वाला कॉन्सटेंट. इससे पता चलता है कि यह डेटा सोर्स, रॉ डेटा जनरेट करता है या हासिल किया गया डेटा.

इन वैल्यू को इस्तेमाल किया जा सकता है:
  • "derived"
  • "raw"

जवाब

अगर यह तरीका काम करता है, तो रिस्पॉन्स के मुख्य हिस्से में यह तरीका Users.dataSources संसाधन दिखाता है.

इसे आज़माएं!

लाइव डेटा पर इस तरीके को कॉल करने और रिस्पॉन्स देखने के लिए, नीचे दिया गया एपीआई एक्सप्लोरर इस्तेमाल करें.