अनुरोध और जवाब

इस गाइड में, Google Docs API के मुख्य अनुरोध और जवाब के तरीकों के बारे में बताया गया है. साथ ही, इसमें यह भी बताया गया है कि बैच में किसी दस्तावेज़ को कैसे अपडेट किया जा सकता है.

Google Docs API को एचटीटीपी अनुरोध का इस्तेमाल करके या किसी भाषा के लिए बनी क्लाइंट लाइब्रेरी में, किसी तरीके को कॉल करके ऐक्सेस किया जा सकता है. ये दोनों तरीके, एक जैसे काम करते हैं.

Google Docs API, एचटीटीपी रिस्पॉन्स दिखाता है. इसमें आम तौर पर, अनुरोध को कॉल करने का नतीजा शामिल होता है. अनुरोध करने के लिए, क्लाइंट लाइब्रेरी का इस्तेमाल करने पर, जवाब किसी भाषा के हिसाब से मिलते हैं.

अनुरोध करने के तरीके

Docs API, इन तरीकों के साथ काम करता है:

  • documents.create: खाली Google Docs दस्तावेज़ बनाएं.

  • documents.get: तय किए गए दस्तावेज़ का पूरा इंस्टेंस दिखाएं. दस्तावेज़ का कॉन्टेंट, फ़ॉर्मैटिंग, और अन्य सुविधाएं पाने के लिए, दिखाए गए JSON को पार्स किया जा सकता है.

  • documents.batchUpdate: दस्तावेज़ में एक साथ कई बदलाव करने के लिए, बदलाव के अनुरोधों की सूची सबमिट करें और नतीजों की सूची पाएं.

documents.get और documents.batchUpdate तरीकों के लिए, पैरामीटर के तौर पर documentId की ज़रूरत होती है. इससे, टारगेट दस्तावेज़ तय किया जाता है. documents.create तरीका, बनाए गए दस्तावेज़ का इंस्टेंस दिखाता है. इससे, documentId पढ़ा जा सकता है. documentId के बारे में ज़्यादा जानने के लिए, दस्तावेज़ का आईडी देखें.

पब्लिश किए गए दस्तावेज़

पब्लिश किए गए दस्तावेज़ों को वापस पाने के लिए, documents.get तरीके का इस्तेमाल नहीं किया जा सकता. पब्लिश होने के बाद, सार्वजनिक दस्तावेज़ अलग यूआरएल फ़ॉर्मैट का इस्तेमाल करते हैं. साथ ही, इनका documentId भी अलग और सार्वजनिक होता है. documents.get तरीके के साथ, सार्वजनिक documentId का इस्तेमाल करने की कोशिश करने पर, 404 एचटीटीपी स्टेटस कोड वाला जवाब मिलता है.

इसी तरह, पब्लिश किए गए दस्तावेज़ को कॉपी करने के लिए, Drive API files.copy तरीके का इस्तेमाल नहीं किया जा सकता.

पब्लिश किए गए दस्तावेज़ को वापस पाने या कॉपी करने के लिए, आपको ओरिजनल documentId का इस्तेमाल करना होगा. पब्लिश किए गए यूआरएल से, ओरिजनल documentId निकालने के लिए कोई तरीका उपलब्ध नहीं है.

ज़्यादा जानकारी के लिए, ये लेख देखें:

बैच अपडेट

documents.batchUpdate तरीका, request ऑब्जेक्ट की सूची लेता है. इनमें से हर ऑब्जेक्ट, कोई कार्रवाई करने के लिए एक अनुरोध तय करता है. उदाहरण के लिए, किसी पैराग्राफ़ को फ़ॉर्मैट करें और फिर उसमें इनलाइन इमेज जोड़ें. हर अनुरोध को लागू करने से पहले उसकी पुष्टि की जाती है. साथ ही, अनुरोधों को बैच अनुरोध में दिखने के क्रम के हिसाब से प्रोसेस किया जाता है.

बैच अपडेट में मौजूद सभी अनुरोध, एक साथ लागू होते हैं. इसका मतलब है कि अगर कोई अनुरोध मान्य नहीं है, तो पूरा अपडेट पूरा नहीं होगा. साथ ही, (संभावित तौर पर एक-दूसरे पर निर्भर) कोई भी बदलाव लागू नहीं होगा.

documents.batchUpdate के कुछ तरीकों से, लागू किए गए अनुरोधों के बारे में जानकारी वाले जवाब मिलते हैं. इन तरीकों से, जवाब का ऐसा मुख्य हिस्सा मिलता है जिसमें response ऑब्जेक्ट की सूची होती है. अन्य अनुरोधों के लिए, जानकारी दिखाने की ज़रूरत नहीं होती. इसलिए, इनके लिए खाली जवाब दिखता है. जवाब की सूची में मौजूद ऑब्जेक्ट, उनसे जुड़े अनुरोध के इंडेक्स के क्रम में ही दिखते हैं.

बैच अनुरोध करने का एक लोकप्रिय पैटर्न यहां दिया गया है:

requests = []
requests.append(first request)
requests.append(second request)
...

body = ... & requests & ...

...batchUpdate(body)

Docs API कॉल को बैच में करने के तरीके के बारे में पूरी जानकारी पाने के लिए, बैच अनुरोध से जुड़े सबसे सही तरीके देखें. साथ ही, अनुरोध और जवाब के टाइप के बारे में जानने के लिए, documents.batchUpdateरेफ़रंस से जुड़ा दस्तावेज़ देखें.

जहां मुमकिन हो, वहां एक से ज़्यादा अनुरोधों को एक ही कॉल में ग्रुप करने के लिए,

बैच अपडेट की कार्रवाइयां

बैच अपडेट के अनुरोध अलग-अलग तरह के होते हैं. यहां अनुरोध के टाइप की जानकारी दी गई है. इन्हें अलग-अलग कैटगरी में बांटा गया है.

ऑब्जेक्ट जोड़ें / डालें अपडेट करें / बदलें मिटाएं
टेक्स्ट InsertTextRequest ReplaceAllTextRequest
स्टाइल CreateParagraphBulletsRequest UpdateTextStyleRequest
UpdateParagraphStyleRequest
UpdateTableCellStyleRequest
UpdateTableRowStyleRequest
UpdateDocumentStyleRequest
UpdateSectionStyleRequest
DeleteParagraphBulletsRequest
नामित रेंज CreateNamedRangeRequest ReplaceNamedRangeContentRequest DeleteNamedRangeRequest
DeleteContentRangeRequest
इमेज InsertInlineImageRequest ReplaceImageRequest
टेबल InsertTableRequest
InsertTableRowRequest
InsertTableColumnRequest
UpdateTableColumnPropertiesRequest
MergeTableCellsRequest
UnmergeTableCellsRequest
PinTableHeaderRowsRequest
DeleteTableRowRequest
DeleteTableColumnRequest
पेज ऑब्जेक्ट (इनमें हेडर और फ़ुटर शामिल हैं) InsertPageBreakRequest
CreateHeaderRequest
CreateFooterRequest
CreateFootnoteRequest
InsertSectionBreakRequest
DeletePositionedObjectRequest
DeleteHeaderRequest
DeleteFooterRequest