डेटा मैनेजर एपीआई के बारे में जानने के लिए, इस क्विकस्टार्ट का इस्तेमाल करें. आपको क्विकस्टार्ट का कौनसा वर्शन देखना है, यह चुनें:
इस क्विकस्टार्ट में, आपको यह काम करना होगा:
- ऑडियंस का डेटा पाने के लिए, Destinationतैयार करें.
- भेजने के लिए ऑडियंस का डेटा तैयार करें.
- ऑडियंस के सदस्यों के लिए, IngestionServiceअनुरोध बनाएं.
- Google APIs Explorer की मदद से अनुरोध भेजें.
- सफल और असफल जवाबों के बारे में जानें.
डेस्टिनेशन तैयार करना
डेटा भेजने से पहले, आपको डेस्टिनेशन को डेटा भेजने के लिए तैयार करना होगा. यहां आपके इस्तेमाल के लिए, Destination का एक सैंपल दिया गया है:
    {
      "operatingAccount": {
        "accountType": "OPERATING_ACCOUNT_TYPE",
        "accountId": "OPERATING_ACCOUNT_ID"
      },
      "productDestinationId": "AUDIENCE_ID"
    }
- operatingAccountको उस खाते के टाइप और आईडी पर सेट करें जिसे ऑडियंस का डेटा मिलेगा.
ऑडियंस का डेटा तैयार करना
कॉमा से अलग की गई फ़ाइल में मौजूद इस सैंपल डेटा पर ध्यान दें. फ़ाइल की हर लाइन, ऑडियंस के किसी सदस्य से जुड़ी होती है. साथ ही, हर सदस्य के पास ज़्यादा से ज़्यादा तीन ईमेल पते होते हैं.
#,email_1,email_2,email_3
1,dana@example.com,DanaM@example.com,
2,ALEXJ@example.com, AlexJ@cymbalgroup.com,alexj@altostrat.com
3,quinn@CYMBALGROUP.com,baklavainthebalkans@gmail.com  ,
4,rosario@example.org,cloudySanFrancisco@GMAIL.com,
ईमेल पतों के लिए, फ़ॉर्मैटिंग और हैशिंग से जुड़ी ये ज़रूरी शर्तें पूरी होनी चाहिए:
- शुरू, आखिर, और बीच में मौजूद सभी खाली सफ़ेद जगहों को हटाएं.
- ईमेल पते को अंग्रेज़ी के छोटे अक्षरों में बदलें.
- SHA-256 एल्गोरिदम का इस्तेमाल करके, ईमेल पते को हैश करें.
- हैश बाइट को हेक्साडेसिमल (हेक्स) या Base64 एन्कोडिंग का इस्तेमाल करके कोड में बदलें. इस गाइड में दिए गए उदाहरणों में, हेक्स एन्कोडिंग का इस्तेमाल किया गया है.
यहां फ़ॉर्मैट किया गया डेटा दिया गया है:
#,email_1,email_2,email_3
1,dana@example.com,danam@example.com,
2,alexj@example.com,alexj@cymbalgroup.com,alexj@altostrat.com
3,quinn@cymbalgroup.com,baklavainthebalkans@gmail.com,
4,rosario@example.org,cloudysanfrancisco@gmail.com,
यहां हैश और कोड किया गया डेटा दिया गया है:
#,email_1,email_2,email_3
1,07e2f1394b0ea80e2adca010ea8318df697001a005ba7452720edda4b0ce57b3,1df6b43bc68dd38eca94e6a65b4f466ae537b796c81a526918b40ac4a7b906c7
2,2ef46c4214c3fc1b277a2d976d55194e12b899aa50d721f28da858c7689756e3,54e410b14fa652a4b49b43aff6eaf92ad680d4d1e5e62ed71b86cd3188385a51,e8bd3f8da6f5af73bec1ab3fbf7beb47482c4766dfdfc94e6bd89e359c139478
3,05bb62526f091b45d20e243d194766cca8869137421047dc53fa4876d111a6f0,f1fcde379f31f4d446b76ee8f34860eca2288adc6b6d6c0fdc56d9eee75a2fa5
4,83a834cc5327bc4dee7c5408988040dc5813c7662611cd93b707aff72bf7d33f,223ebda6f6889b1494551ba902d9d381daf2f642bae055888e96343d53e9f9c4
यहां इनपुट डेटा की पहली लाइन में मौजूद dana@example.com और danam@example.com के फ़ॉर्मैट किए गए, हैश किए गए, और कोड किए गए ईमेल पतों के लिए AudienceMember का एक सैंपल दिया गया है:
{
  "userData": {
    "userIdentifiers": [
      {
        "emailAddress": "07e2f1394b0ea80e2adca010ea8318df697001a005ba7452720edda4b0ce57b3"
      },
      {
        "emailAddress": "1df6b43bc68dd38eca94e6a65b4f466ae537b796c81a526918b40ac4a7b906c7"
      }
    ]
  }
}
अनुरोध का मुख्य हिस्सा बनाना
अनुरोध के मुख्य हिस्से के लिए, Destination और userData को एक साथ इस्तेमाल करें:
{
  "destinations": [
    {
      "operatingAccount": {
        "accountType": "OPERATING_ACCOUNT_TYPE",
        "accountId": "OPERATING_ACCOUNT_ID"
      },
      "productDestinationId": "AUDIENCE_ID"
    }
  ],
  "audienceMembers": [
    {
      "userData": {
        "userIdentifiers": [
          {
            "emailAddress": "07e2f1394b0ea80e2adca010ea8318df697001a005ba7452720edda4b0ce57b3"
          },
          {
            "emailAddress": "1df6b43bc68dd38eca94e6a65b4f466ae537b796c81a526918b40ac4a7b906c7"
          }
        ]
      }
    },
    {
      "userData": {
        "userIdentifiers": [
          {
            "emailAddress": "2ef46c4214c3fc1b277a2d976d55194e12b899aa50d721f28da858c7689756e3"
          },
          {
            "emailAddress": "54e410b14fa652a4b49b43aff6eaf92ad680d4d1e5e62ed71b86cd3188385a51"
          },
          {
            "emailAddress": "e8bd3f8da6f5af73bec1ab3fbf7beb47482c4766dfdfc94e6bd89e359c139478"
          }
        ]
      }
    },
    {
      "userData": {
        "userIdentifiers": [
          {
            "emailAddress": "05bb62526f091b45d20e243d194766cca8869137421047dc53fa4876d111a6f0"
          },
          {
            "emailAddress": "f1fcde379f31f4d446b76ee8f34860eca2288adc6b6d6c0fdc56d9eee75a2fa5"
          }
        ]
      }
    },
    {
      "userData": {
        "userIdentifiers": [
          {
            "emailAddress": "83a834cc5327bc4dee7c5408988040dc5813c7662611cd93b707aff72bf7d33f"
          },
          {
            "emailAddress": "223ebda6f6889b1494551ba902d9d381daf2f642bae055888e96343d53e9f9c4"
          }
        ]
      }
    }
  ],
  "consent": {
    "adUserData": "CONSENT_GRANTED",
    "adPersonalization": "CONSENT_GRANTED"
  },
  "encoding": "HEX",
  "termsOfService": {
    "customerMatchTermsOfServiceStatus": "ACCEPTED"
  },
  "validateOnly": true
}
- बॉडी में मौजूद प्लेसहोल्डर अपडेट करें. जैसे, OPERATING_ACCOUNT_TYPE,OPERATING_ACCOUNT_ID, औरAUDIENCE_ID. इन्हें अपने खाते और डेस्टिनेशन की वैल्यू से बदलें.
- बदलावों को लागू किए बिना अनुरोध की पुष्टि करने के लिए, validateOnlyकोtrueपर सेट करें. जब आपको बदलाव लागू करने हों, तबvalidateOnlyकोfalseपर सेट करें.
- termsOfServiceको सेट करके यह बताएं कि उपयोगकर्ता ने कस्टमर मैच की सेवा की शर्तें स्वीकार कर ली हैं.
- ध्यान दें कि इस अनुरोध से पता चलता है कि consentको अनुमति दी गई है और यह एन्क्रिप्शन का इस्तेमाल नहीं करता है.
अनुरोध भेजें
- सैंपल के सबसे ऊपर दाईं ओर मौजूद 'कॉपी करें' बटन का इस्तेमाल करके, अनुरोध के मुख्य हिस्से को कॉपी करें.
- टूलबार में मौजूद, API बटन पर क्लिक करें.
- कॉपी किए गए अनुरोध के मुख्य भाग को अनुरोध का मुख्य भाग बॉक्स में चिपकाएं.
- लागू करें बटन पर क्लिक करें. इसके बाद, पुष्टि करने के लिए दिए गए निर्देशों का पालन करें और जवाब की समीक्षा करें.
सक्सेस रिस्पॉन्स
अनुरोध पूरा होने पर, जवाब में एक ऐसा ऑब्जेक्ट मिलता है जिसमें requestId शामिल होता है.
{
  "requestId": "126365e1-16d0-4c81-9de9-f362711e250a"
}
लौटाए गए requestId को रिकॉर्ड करें, ताकि अनुरोध में मौजूद हर डेस्टिनेशन को प्रोसेस करते समय, डाइग्नोस्टिक्स को वापस पाया जा सके.
जवाब नहीं मिला
अनुरोध पूरा न होने पर, गड़बड़ी के जवाब का स्टेटस कोड मिलता है. जैसे, 400 Bad
Request. साथ ही, गड़बड़ी की जानकारी वाला जवाब मिलता है.
उदाहरण के लिए, अगर email_address में हेक्स कोड में बदली गई वैल्यू के बजाय, सामान्य टेक्स्ट वाली स्ट्रिंग शामिल की जाती है, तो यह जवाब मिलता है:
{
  "error": {
    "code": 400,
    "message": "There was a problem with the request.",
    "status": "INVALID_ARGUMENT",
    "details": [
      {
        "@type": "type.googleapis.com/google.rpc.ErrorInfo",
        "reason": "INVALID_ARGUMENT",
        "domain": "datamanager.googleapis.com"
      },
      {
        "@type": "type.googleapis.com/google.rpc.BadRequest",
        "fieldViolations": [
          {
            "field": "audience_members.audience_members[0].user_data.user_identifiers",
            "description": "Email is not hex encoded.",
            "reason": "INVALID_HEX_ENCODING"
          }
        ]
      }
    ]
  }
}
हैश नहीं किए गए और सिर्फ़ हेक्स फ़ॉर्मैट में एन्कोड किए गए email_address से, यह जवाब मिलता है:
{
  "error": {
    "code": 400,
    "message": "There was a problem with the request.",
    "status": "INVALID_ARGUMENT",
    "details": [
      {
        "@type": "type.googleapis.com/google.rpc.ErrorInfo",
        "reason": "INVALID_ARGUMENT",
        "domain": "datamanager.googleapis.com"
      },
      {
        "@type": "type.googleapis.com/google.rpc.BadRequest",
        "fieldViolations": [
          {
            "field": "audience_members.audience_members[0]",
            "reason": "INVALID_SHA256_FORMAT"
          }
        ]
      }
    ]
  }
}
एक से ज़्यादा डेस्टिनेशन के लिए इवेंट भेजना
अगर आपके डेटा में अलग-अलग डेस्टिनेशन के लिए ऑडियंस के सदस्य शामिल हैं, तो डेस्टिनेशन के रेफ़रंस का इस्तेमाल करके, उन्हें एक ही अनुरोध में भेजा जा सकता है.
उदाहरण के लिए, अगर आपके पास उपयोगकर्ता सूची आईडी 11112222 के लिए ऑडियंस का कोई सदस्य है और उपयोगकर्ता सूची आईडी 77778888 के लिए ऑडियंस का कोई दूसरा सदस्य है, तो दोनों सदस्यों को एक ही अनुरोध में भेजें. इसके लिए, हर Destination का reference सेट करें. reference को उपयोगकर्ता तय करता है. इसके लिए, सिर्फ़ यह ज़रूरी है कि हर reference का एक यूनीक reference हो.Destination अनुरोध के लिए, बदली गई destinations सूची यहां दी गई है:
  "destinations": [
    {
      "operatingAccount": {
        "accountType": "GOOGLE_ADS",
        "accountId": "OPERATING_ACCOUNT_ID"
      },
      "productDestinationId": "11112222",
      "reference": "audience_1"
    },
    {
      "operatingAccount": {
        "accountType": "GOOGLE_ADS",
        "accountId": "OPERATING_ACCOUNT_ID"
      },
      "productDestinationId": "77778888",
      "reference": "audience_2"
    }
  ]
AudienceMember की destination_references सेट करें, ताकि इसे एक या एक से ज़्यादा डेस्टिनेशन पर भेजा जा सके. उदाहरण के लिए, यहां एक AudienceMember दिया गया है. यह सिर्फ़ पहले Destination के लिए है. इसलिए, इसकी destination_references सूची में सिर्फ़ पहले Destination का reference शामिल है:
{
  "userData": {
    "userIdentifiers": [
      {
        "emailAddress": "07e2f1394b0ea80e2adca010ea8318df697001a005ba7452720edda4b0ce57b3"
      },
      {
        "emailAddress": "1df6b43bc68dd38eca94e6a65b4f466ae537b796c81a526918b40ac4a7b906c7"
      }
    ],
  }
  "destinationReferences": [
    "audience_1"
  ]
}
destination_references फ़ील्ड एक सूची है. इसलिए, ऑडियंस के किसी सदस्य के लिए एक से ज़्यादा डेस्टिनेशन तय किए जा सकते हैं. अगर आपने AudienceMember के लिए destination_references सेट नहीं किया है, तो Data Manager API, ऑडियंस के सदस्य को अनुरोध में शामिल सभी डेस्टिनेशन पर भेजता है.
अगले चरण
- क्लाइंट लाइब्रेरी की मदद से, पुष्टि करने की सुविधा कॉन्फ़िगर करें और अपना एनवायरमेंट सेट अप करें.
- हर तरह के डेटा के लिए, फ़ॉर्मैटिंग, हैशिंग, और एन्कोडिंग से जुड़ी ज़रूरी शर्तों के बारे में जानें.
- उपयोगकर्ता के डेटा को एन्क्रिप्ट (सुरक्षित) करने का तरीका जानें.
- अपने अनुरोधों के लिए गड़बड़ी से जुड़ी जानकारी पाने का तरीका जानें.
- सबसे सही तरीकों के बारे में जानें.
- सीमाओं और कोटा के बारे में जानें.