ক্লাসিক Google Sites API আপনার অ্যাপ্লিকেশনগুলিকে একটি Google সাইটের মধ্যে সামগ্রী অ্যাক্সেস, প্রকাশ এবং সংশোধন করার অনুমতি দেয়৷ এছাড়াও, আপনার অ্যাপ্লিকেশন সাম্প্রতিক কার্যকলাপের একটি তালিকা অনুরোধ করতে পারে, পুনর্বিবেচনা ইতিহাস আনয়ন করতে পারে এবং সংযুক্তি এবং ফাইলগুলি আপলোড/ডাউনলোড করতে পারে৷
শ্রোতা
এই নথিটি অনুমান করে যে আপনি Google Data APIs প্রোটোকলের পিছনে সাধারণ ধারণাগুলি বোঝেন।
এই দস্তাবেজটি এমন প্রোগ্রামারদের জন্য যারা ক্লায়েন্ট অ্যাপ্লিকেশন লিখতে চান যা Google সাইটগুলির সাথে ইন্টারঅ্যাক্ট করতে পারে৷ এটি ব্যাখ্যা সহ, কাঁচা XML/HTTP ব্যবহার করে মৌলিক ডেটা API ইন্টারঅ্যাকশনের উদাহরণগুলির একটি সিরিজ প্রদান করে। এই নথিটি পড়ার পরে, আপনি বাম-পাশের ন্যাভিবারে অন্যান্য গাইডগুলিতে পাওয়া ভাষা-নির্দিষ্ট উদাহরণগুলি পড়ে আমাদের ক্লায়েন্ট লাইব্রেরিগুলি ব্যবহার করে API-এর সাথে ইন্টারঅ্যাক্ট করার বিষয়ে আরও শিখতে পারেন।
এই নির্দেশিকায় উপাদানের একটি রেফারেন্সের জন্য, রেফারেন্স গাইড দেখুন।
অনুরোধ অনুমোদন
যখন আপনার অ্যাপ্লিকেশন অ-সর্বজনীন ব্যবহারকারী ডেটার জন্য অনুরোধ করে, তখন এটিতে অবশ্যই একটি অনুমোদন টোকেন অন্তর্ভুক্ত থাকতে হবে। টোকেনটি Google-এ আপনার আবেদনকেও শনাক্ত করে।
অনুমোদন প্রোটোকল সম্পর্কে
অনুরোধ অনুমোদন করতে আপনার অ্যাপ্লিকেশন অবশ্যই OAuth 2.0 ব্যবহার করবে। অন্য কোন অনুমোদন প্রোটোকল সমর্থিত হয় না. যদি আপনার অ্যাপ্লিকেশন Google এর সাথে সাইন ইন ব্যবহার করে, তবে অনুমোদনের কিছু দিক আপনার জন্য পরিচালনা করা হয়।
OAuth 2.0 এর মাধ্যমে অনুরোধ অনুমোদন করা হচ্ছে
অ-সর্বজনীন ব্যবহারকারীর ডেটার জন্য Google Sites Data API-তে অনুরোধগুলি একজন প্রমাণীকৃত ব্যবহারকারীর দ্বারা অনুমোদিত হতে হবে।
OAuth 2.0-এর জন্য অনুমোদন প্রক্রিয়ার বিশদ বিবরণ বা "প্রবাহ" আপনি কোন ধরনের অ্যাপ্লিকেশন লিখছেন তার উপর নির্ভর করে কিছুটা পরিবর্তিত হয়। নিম্নলিখিত সাধারণ প্রক্রিয়া সব ধরনের আবেদনের ক্ষেত্রে প্রযোজ্য:
- আপনি যখন আপনার অ্যাপ্লিকেশন তৈরি করেন, আপনি Google API কনসোল ব্যবহার করে এটি নিবন্ধন করেন। Google তারপরে আপনার প্রয়োজন হবে এমন তথ্য প্রদান করে, যেমন একটি ক্লায়েন্ট আইডি এবং একটি ক্লায়েন্ট গোপন।
- Google API কনসোলে Google Sites Data API সক্রিয় করুন। (যদি API কনসোলে এপিআই তালিকাভুক্ত না থাকে, তাহলে এই ধাপটি এড়িয়ে যান।)
- যখন আপনার অ্যাপ্লিকেশনটির ব্যবহারকারীর ডেটাতে অ্যাক্সেসের প্রয়োজন হয়, তখন এটি Google কে অ্যাক্সেসের একটি নির্দিষ্ট সুযোগের জন্য জিজ্ঞাসা করে।
- Google ব্যবহারকারীর কাছে একটি সম্মতি স্ক্রীন প্রদর্শন করে, তাদের কিছু ডেটা অনুরোধ করার জন্য আপনার আবেদনকে অনুমোদন করতে বলে।
- যদি ব্যবহারকারী অনুমোদন করেন, তাহলে Google আপনার অ্যাপ্লিকেশনকে একটি স্বল্পকালীন অ্যাক্সেস টোকেন দেয়।
- আপনার অ্যাপ্লিকেশন ব্যবহারকারীর ডেটা অনুরোধ করে, অনুরোধে অ্যাক্সেস টোকেন সংযুক্ত করে।
- যদি Google নির্ধারণ করে যে আপনার অনুরোধ এবং টোকেন বৈধ, এটি অনুরোধ করা ডেটা ফেরত দেয়।
কিছু প্রবাহে অতিরিক্ত পদক্ষেপ অন্তর্ভুক্ত থাকে, যেমন নতুন অ্যাক্সেস টোকেন অর্জন করতে রিফ্রেশ টোকেন ব্যবহার করে। বিভিন্ন ধরনের অ্যাপ্লিকেশনের জন্য প্রবাহ সম্পর্কে বিস্তারিত তথ্যের জন্য, Google এর OAuth 2.0 ডকুমেন্টেশন দেখুন।
Google Sites Data API-এর জন্য এখানে OAuth 2.0 স্কোপের তথ্য রয়েছে:
https://sites.google.com/feeds/
OAuth 2.0 ব্যবহার করে অ্যাক্সেসের অনুরোধ করার জন্য, আপনার অ্যাপ্লিকেশনের সুযোগ তথ্যের প্রয়োজন, সেইসাথে আপনি যখন আপনার আবেদনটি নিবন্ধন করেন তখন Google সরবরাহ করে এমন তথ্য (যেমন ক্লায়েন্ট আইডি এবং ক্লায়েন্ট সিক্রেট)।
একটি সংস্করণ নির্দিষ্ট করা হচ্ছে
Google Sites Data API-তে আপনার প্রতিটি অনুরোধ 1.4-এর একটি সংস্করণ উল্লেখ করা উচিত। একটি সংস্করণ নম্বর নির্দিষ্ট করতে, GData-Version
HTTP হেডার ব্যবহার করুন:
GData-Version: 1.4
বিকল্পভাবে, আপনি যদি HTTP শিরোনাম সেট করতে না পারেন, আপনি URL-এ একটি ক্যোয়ারী প্যারামিটার হিসাবে v=1.4
নির্দিষ্ট করতে পারেন। কিন্তু যেখানে সম্ভব HTTP হেডার পছন্দ করা হয়।
দ্রষ্টব্য : ক্লায়েন্ট লাইব্রেরিগুলি স্বয়ংক্রিয়ভাবে উপযুক্ত সংস্করণ শিরোনাম সরবরাহ করে, তাই আপনি যখন ক্লায়েন্ট লাইব্রেরি ব্যবহার করছেন তখন v=1.4
ক্যোয়ারী প্যারামিটার ব্যবহার করবেন না।
সাইট ফিড
সাইট ফিডটি ব্যবহারকারীর মালিকানাধীন Google Sites তালিকাভুক্ত করতে বা বিদ্যমান সাইটের শিরোনাম পরিবর্তন করতে ব্যবহার করা যেতে পারে। G Suite ডোমেনগুলির জন্য, এটি একটি সম্পূর্ণ সাইট তৈরি বা অনুলিপি করতেও ব্যবহার করা যেতে পারে।
তালিকা সাইট
ব্যবহারকারীর অ্যাক্সেস আছে এমন সাইটগুলি তালিকাভুক্ত করতে, নিম্নলিখিত URL-এ একটি প্রমাণীকৃত GET
অনুরোধ পাঠান:
https://sites.google.com/feeds/site/domainName
ফিড প্যারামিটার | বর্ণনা |
---|---|
domainName | ' site ' বা আপনার G Suite হোস্ট করা ডোমেনের ডোমেন (যেমন example.com )। |
প্রতিক্রিয়াতে সাইটের তালিকা সহ একটি ফিড থাকবে:
GET /feeds/site/domainName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> HTTP/1.1 200 OK <feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:gAcl="http://schemas.google.com/acl/2007" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0"> <id>https://sites.google.com/feeds/site/site</id> <updated>2009-12-02T17:47:34.406Z</updated> <title>Site</title> <link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="https://sites.google.com/feeds/site/site"/> <link rel="http://schemas.google.com/g/2005#post" type="application/atom+xml" href="https://sites.google.com/feeds/feeds/site/domainName"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName"/> <link rel="next" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/?start-index=2"/> <generator version="1" uri="http://sites.google.com/">Google Sites</generator> <openSearch:startIndex>1</openSearch:startIndex> <entry gd:etag="W/"CkUAQH4_eil7I2A9WxNaFk4.""> <id>https://sites.google.com/feeds/site/site/myTestSite</id> <updated>2009-12-01T01:17:21.042Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-01T01:17:21.042Z</app:edited> <title>myTestSite</title> <summary/> <link rel="alternate" type="text/html" href="http://sites.google.com/site/myTestSite/"/> <link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/myTestSite"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/myTestSite"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/myTestSite"/> <sites:siteName>myTestSite</sites:siteName> <sites:theme>default</sites:theme> </entry> <entry gd:etag="W/"DkQGQHczfA9WxNaFk4.""> <id>https://sites.google.com/feeds/site/domainName/myOtherTestSite</id> <updated>2009-12-01T02:25:21.987Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-01T02:25:21.987Z</app:edited> <title>myOtherTestSite</title> <summary>A new site to hold memories</summary> <category scheme="http://schemas.google.com/sites/2008#tag" term="Memories Site"/> <link rel="alternate" type="text/html" href="http://sites.google.com/site/myOtherTestSite"/> <link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/myOtherTestSite"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/myOtherTestSite"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/myOtherTestSite"/> <sites:siteName>myOtherTestSite</sites:siteName> <sites:theme>iceberg</sites:theme> </entry> ... </feed>
সাইটগুলি বর্ণানুক্রমিকভাবে তালিকাভুক্ত করা হয়েছে।
নতুন সাইট তৈরি করা
দ্রষ্টব্য : এই বৈশিষ্ট্যটি শুধুমাত্র G Suite ডোমেনে উপলব্ধ।
সাইট ফিডে একটি HTTP POST
করে নতুন সাইটগুলির ব্যবস্থা করা যেতে পারে, উদাহরণস্বরূপ:
POST /feeds/site/example.com HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> <entry xmlns="http://www.w3.org/2005/Atom" xmlns:sites="http://schemas.google.com/sites/2008"> <title>Source Site</title> <summary>A new site to hold memories</summary> <sites:theme>slate</sites:theme> </entry>
উপরের অনুরোধটি G Suite ডোমেইন example.com
এর অধীনে 'স্লেট' থিম সহ একটি নতুন Google সাইট তৈরি করবে। সাইটের URL হবে http://sites.google.com/a/example.com/source-site/৷
সাইটটি সফলভাবে তৈরি হলে, সার্ভারটি 201 Created
এর সাথে প্রতিক্রিয়া জানাবে। প্রতিক্রিয়া এন্ট্রিতে সার্ভার দ্বারা যোগ করা উপাদান থাকবে, যেমন সাইটের লিঙ্ক, সাইটের ACL ফিডের লিঙ্ক, সাইটের নাম, শিরোনাম এবং সারাংশ।
<entry xmlns="http://www.w3.org/2005/Atom" xmlns:gAcl="http://schemas.google.com/acl/2007" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" gd:etag="W/"DEECR38l7I2A9WxNaF0Q.""> <id>https://sites.google.com/feeds/site/example.com/source-site</id> <updated>2009-12-02T23:31:06.184Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-02T23:31:06.184Z</app:edited> <title>New Test Site</title> <summary>A new site to hold memories</summary> <link rel="alternate" type="text/html" href="http://sites.google.com/a/example.com/source-site/"/> <link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/example.com/source-site"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/source-site"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/source-site"/> <sites:siteName>source-site</sites:siteName> <sites:theme>slate</sites:theme> </entry>
একটি সাইট কপি করা
দ্রষ্টব্য : এই বৈশিষ্ট্যটি শুধুমাত্র G Suite ডোমেনে উপলব্ধ।
একটি বিদ্যমান সাইট একটি নতুন সাইট তৈরির মতো একই ফ্যাশনে নকল করা যেতে পারে। যাইহোক, POST
অনুরোধের এটম এন্ট্রিতে, কপি করার জন্য সাইটের সাইট ফিডের দিকে নির্দেশ করে rel='source'
সহ একটি <link>
অন্তর্ভুক্ত করুন। কপি করা হয়েছে যে কোনো সাইটে এই লিঙ্ক থাকবে. এখানে একটি সাইট সদৃশ করার জন্য একটি উদাহরণ:
POST /feeds/site/example.com HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> <entry xmlns="http://www.w3.org/2005/Atom"> <link rel="http://schemas.google.com/sites/2008#source" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/source-site"/> <title>Copy of New Test Site</title> <summary>A newer site to hold memories</summary> </entry>
উপরের অনুরোধটি http://sites.google.com/a/example.com/source-site/-এ সাইটটি অনুলিপি করবে।
গুরুত্বপূর্ণ পয়েন্ট:
- শুধুমাত্র প্রমাণীকৃত ব্যবহারকারীর মালিকানাধীন সাইট এবং সাইট টেমপ্লেট কপি করা যাবে।
- একটি সাইট টেমপ্লেটও অনুলিপি করা যেতে পারে। একটি সাইট হল একটি টেমপ্লেট যদি "এই সাইটটিকে একটি টেমপ্লেট হিসাবে প্রকাশ করুন" সেটিংসটি Google Sites সেটিংস পৃষ্ঠায় চেক করা থাকে৷
- আপনি অন্য ডোমেন থেকে একটি সাইট অনুলিপি করতে পারেন, যদি আপনি উৎস সাইটে মালিক হিসাবে তালিকাভুক্ত হন।
একটি সাইটের মেটাডেটা আপডেট করা হচ্ছে
একটি সাইটের শিরোনাম বা সারাংশ আপডেট করতে, একটি সাইট এন্ট্রির edit
লিঙ্কে একটি HTTP PUT
পাঠান৷ উদাহরণস্বরূপ, নিম্নলিখিত উদাহরণটি পূর্ববর্তী সাইটের শিরোনামটিকে New Test Site2
এবং এর বিবরণটিকে Newer description
আপডেট করবে।
PUT /feeds/site/example.com/source-site HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> <entry xmlns="http://www.w3.org/2005/Atom" xmlns:gAcl="http://schemas.google.com/acl/2007" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" gd:etag="W/"DEECR38l7I2A9WxNaF0Q.""> <id>https://sites.google.com/feeds/site/example.com/source-site</id> <updated>2009-12-02T23:31:06.184Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-02T23:31:06.184Z</app:edited> <title>New Test Site2</title> <summary>Newer description</summary> <category scheme="http://schemas.google.com/sites/2008#tag" term="Category"/> <link rel="alternate" type="text/html" href="http://sites.google.com/a/example.com/source-site/"/> <link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/example.com/source-site"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/source-site"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/source-site"/> <sites:siteName>source-site</sites:siteName> </entry>
বিভাগ যোগ করা হচ্ছে
দ্রষ্টব্য : এই বৈশিষ্ট্যটি শুধুমাত্র G Suite ডোমেনে উপলব্ধ।
আপনার ডোমেন সাইটের জন্য G Suite ক্যাটাগরি মেটা ডেটা অন্তর্ভুক্ত করে যা আপনার ডোমেনের মধ্যে সাইট শ্রেণীবদ্ধ করার জন্য উপযোগী। বিভাগ মেটা ডেটা যোগ বা আপডেট করতে, আপনার সাইট এন্ট্রির edit
লিঙ্কে একটি HTTP PUT
পাঠান যাতে একটি category
ট্যাগ রয়েছে। নিম্নলিখিত উদাহরণে গাঢ় লাইন দেখুন:
PUT /feeds/site/example.com/source-site HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> <entry xmlns="http://www.w3.org/2005/Atom" xmlns:gAcl="http://schemas.google.com/acl/2007" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" gd:etag="W/"DEECR38l7I2A9WxNaF0Q.""> <id>https://sites.google.com/feeds/site/example.com/source-site</id> <updated>2009-12-02T23:31:06.184Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-02T23:31:06.184Z</app:edited> <title>My Team website</title> <summary>This site contains contact information and a summary of major efforts our team owns</summary> <category scheme="http://schemas.google.com/sites/2008#tag" term="Team Site"/> <link rel="alternate" type="text/html" href="http://sites.google.com/a/example.com/my-team-site/"/> <link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/example.com/my-team-site"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/my-team-site"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/my-team-site"/> <sites:siteName>my-team-site</sites:siteName> </entry>
এই উদাহরণটি একটি বিদ্যমান সাইট সম্পাদনা করে এবং "টিম সাইট" বিভাগ যোগ করে।
আপনি অতিরিক্ত <category>
ট্যাগ যোগ করে একাধিক বিভাগ যোগ করতে পারেন। নিম্নলিখিত উদাহরণে গাঢ় লাইন দেখুন:
PUT /feeds/site/example.com/my-team-site HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> <entry xmlns="http://www.w3.org/2005/Atom" xmlns:gAcl="http://schemas.google.com/acl/2007" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" gd:etag="W/"DEECR38l7I2A9WxNaF0Q.""> <id>https://sites.google.com/feeds/site/example.com/my-team-site</id> <updated>2009-12-02T23:31:06.184Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-02T23:31:06.184Z</app:edited> <title>My Team website</title> <summary>This site contains contact information and a summary of major efforts our team owns</summary> <category scheme="http://schemas.google.com/sites/2008#tag" term="Team Site/"> <category scheme="http://schemas.google.com/sites/2008#tag" term="Legal Department/"> <link rel="alternate" type="text/html" href="http://sites.google.com/a/example.com/my-team-site/"/> <link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/example.com/my-team-site"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/my-team-site"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/my-team-site"/> <sites:siteName>my-team-site</sites:siteName> </entry>
এই উদাহরণটি দুটি বিভাগ যোগ করে: "টিম সাইট" এবং "আইনি বিভাগ"
ওয়েব ঠিকানা ম্যাপিং
ওয়েব ঠিকানা ম্যাপিংগুলি সাইট ব্যবহারকারীদের তাদের নিজস্ব ডোমেনগুলিকে একটি Google সাইটে ম্যাপ করতে সক্ষম করে৷ উদাহরণস্বরূপ, http://sites.google.com/a/domain.com/mysite
এর পরিবর্তে http://www.mydomainsite.com
ব্যবহার করা যেতে পারে। আপনার সাইটটি কোথায় হোস্ট করা হয়েছে তার উপর নির্ভর করে, আপনি ম্যানুয়ালি একটি সাইটের ওয়েব ঠিকানা ম্যাপিং পরিবর্তন করতে পারেন৷ আরও তথ্যের জন্য আমাদের সহায়তা কেন্দ্র নিবন্ধ দেখুন।
একটি সাইটের ওয়েব ঠিকানা ম্যাপিং আনা
একটি সাইটের জন্য ওয়েব ঠিকানা ম্যাপিং ফেরত দিতে, with-mappings=true
প্যারামিটার সহ সাইট এন্ট্রি/ফিড আনুন:
GET /feeds/site/domainName?with-mappings=true HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> HTTP/1.1 200 OK <feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:gAcl="http://schemas.google.com/acl/2007" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0"> ... <entry gd:etag="W/"DkQGQHczfA9WxNaFk4.""> <id>https://sites.google.com/feeds/site/domainName/myOtherTestSite</id> <updated>2009-12-01T02:25:21.987Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-01T02:25:21.987Z</app:edited> <title>myOtherTestSite</title> <summary>A new site to hold memories</summary> <link rel="alternate" type="text/html" href="http://sites.google.com/site/myOtherTestSite"/> <link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/myOtherTestSite"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/myOtherTestSite"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/myOtherTestSite"/> <link rel='webAddressMapping' href='http://www.mysitemapping.com'> <link rel='webAddressMapping' href='http://www.mysitemapping2.com'> <link rel='webAddressMapping' href='http://www.myothermapping.org'> </entry> ... </feed>
বিদ্যমান ম্যাপিংগুলি rel='webAddressMapping'-এর সাথে link
হিসাবে দেখাবে৷ উদাহরণস্বরূপ, উপরের উদাহরণে তিনটি webAddressMapping
আছে যা http://sites.google.com/site/ myOtherTestSite
সাইটে নির্দেশ করে।
ওয়েব ঠিকানা ম্যাপিং পরিবর্তন করা হচ্ছে
দ্রষ্টব্য : ওয়েব ঠিকানা ম্যাপিংয়ের সাথে কাজ করার সময় সমস্ত GET/POST/PUT ক্রিয়াকলাপগুলিকে with-mappings=true
প্যারামিটার উল্লেখ করা উচিত। যদি প্যারামিটারটি অনুপস্থিত থাকে, তাহলে webAddressMapping
সাইট এন্ট্রিগুলিতে (GET) ফেরত দেওয়া হবে না বা একটি এন্ট্রি থেকে (PUT) ম্যাপিং আপডেট/মুছে ফেলার সময় বিবেচনা করা হবে না।
একটি ম্যাপিং যোগ করতে, আপডেট করতে বা মুছে ফেলতে, নতুন সাইট তৈরি করার সময় বা সাইটের মেটাডেটা আপডেট করার সময় এই ধরনের লিঙ্ক নির্দিষ্ট করুন, পরিবর্তন করুন বা সরান৷ with-mappings=true
প্যারামিটার অবশ্যই সাইট ফিড URI-তে অন্তর্ভুক্ত করতে হবে। দ্রষ্টব্য: ঠিকানা ম্যাপিং আপডেট করার জন্য, আপনাকে একটি সাইট অ্যাডমিন হতে হবে, বা একটি G Suite হোস্ট করা সাইটের ক্ষেত্রে একজন ডোমেন প্রশাসক হতে হবে।
উদাহরণস্বরূপ, নীচের অনুরোধটি http://www.mysitemapping.com
ম্যাপিংকে http://www.my-new-sitemapping.com
এ আপডেট করে এবং লিঙ্কটি ছেড়ে দিয়ে http://www.mysitemapping2.com
সরিয়ে দেয় প্রবেশের:
PUT /feeds/site/domainName?with-mappings=true HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> <entry gd:etag="W/"DkQGQHczfA9WxNaFk4.""> <id>https://sites.google.com/feeds/site/domainName/myOtherTestSite</id> <updated>2009-12-01T02:25:21.987Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-01T02:25:21.987Z</app:edited> <title>myOtherTestSite</title> <summary>A new site to hold memories</summary> <link rel="alternate" type="text/html" href="http://sites.google.com/site/myOtherTestSite"/> <link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/myOtherTestSite"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/myOtherTestSite"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/myOtherTestSite"/> <link rel='webAddressMapping' href='www.my-new-sitemapping.com'> <!-- missing mapping2 will be deleted --> <link rel='webAddressMapping' href='http://www.myothermapping.org'> </entry>
দ্রষ্টব্য, একটি সাইট তৈরি/কপি করার সময় ওয়েব ঠিকানা ম্যাপিংগুলিও নির্দিষ্ট করা যেতে পারে।
কার্যকলাপ ফিড
আপনি অ্যাক্টিভিটি ফিড এনে একটি সাইটের সাম্প্রতিক কার্যকলাপ (পরিবর্তন) আনতে পারেন। অ্যাক্টিভিটি ফিডে প্রতিটি এন্ট্রিতে সাইটে করা পরিবর্তনের তথ্য থাকে।
কার্যকলাপ ফিড জিজ্ঞাসা করতে, কার্যকলাপ ফিড URL এ একটি HTTP GET
পাঠান:
https://sites.google.com/feeds/activity/domainName/siteName
ফিড প্যারামিটার | বর্ণনা |
---|---|
domainName | ' site ' বা আপনার G Suite হোস্ট করা ডোমেনের ডোমেন (যেমন example.com )। |
siteName | আপনার সাইটের ওয়েবস্পেস নাম; সাইটের URL এ পাওয়া যায় (যেমন myCoolSite )। |
উদাহরণ অনুরোধ এবং প্রতিক্রিয়া:
GET /feeds/activity/site/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> HTTP/1.1 200 OK <?xml version="1.0" encoding="UTF-8"?> <feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/"> <id>https://sites.google.com/feeds/activity/site/siteName</id> <updated>2009-09-10T05:24:23.120Z</updated> <title>Activity</title> <link rel="alternate" type="text/html" href="http://sites.google.com/site/siteName/system/app/pages/recentChanges"/> <link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="https://sites.google.com/feeds/activity/site/siteName"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/activity/site/siteName"/> <generator version="1" uri="http://sites.google.com">Google Sites</generator> <openSearch:startIndex>1</openSearch:startIndex> <entry xmlns:gd="http://schemas.google.com/g/2005" gd:etag="W/"CU4GQ3szfSl7ImA9WxNRFUg.""> <id>https://sites.google.com/feeds/activity/site/siteName/940375996952876062</id> <updated>2009-09-10T03:38:42.585Z</updated> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#deletion" label="deletion"/> <title>home</title> <summary type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">User deleted <a href="http://sites.google.com/site/siteName/home">home</a> </div> </summary> <link rel="http://schemas.google.com/sites/2008#revision" type="application/atom+xml" href="https://sites.google.com/feeds/revision/site/siteName/5409745539831916487"/> <link rel="http://schemas.google.com/sites/2008#current" type="application/atom+xml" href="https://sites.google.com/feeds/content/site/siteName/5409745539831916487"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/activity/site/siteName/940375996952876062"/> <author> <name>User</name> <email>user@gmail.com</email> </author> </entry> <entry xmlns:gd="http://schemas.google.com/g/2005" gd:etag="W/"CU8DQn45fyl7ImA9WxNRFUg.""> <id>https://sites.google.com/feeds/activity/site/siteName/7165439066235480082</id> <updated>2009-09-10T03:37:53.027Z</updated> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#edit" label="edit"/> <title>home</title> <summary type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">User2 edited <a href="http://sites.google.com/site/siteName/home">home</a> </div> </summary> <link rel="http://schemas.google.com/sites/2008#revision" type="application/atom+xml" href="https://sites.google.com/feeds/revision/site/siteName/5409745539831916487"/> <link rel="http://schemas.google.com/sites/2008#current" type="application/atom+xml" href="https://sites.google.com/feeds/content/site/siteName/5409745539831916487"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/activity/site/siteName/7165439066235480082"/> <author> <name>User</name> <email>user@gmail.com</email> </author> </entry> <entry xmlns:gd="http://schemas.google.com/g/2005" gd:etag="W/"CU8AR3s4cSl7ImA9WxNRFUg.""> <id>https://sites.google.com/feeds/activity/site/siteName/127448462987345884</id> <updated>2009-09-10T03:37:26.539Z</updated> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#creation" label="creation"/> <title>home</title> <summary type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">User3 created <a href="http://sites.google.com/site/siteName/home">home</a> </div> </summary> <link rel="http://schemas.google.com/sites/2008#revision" type="application/atom+xml" href="https://sites.google.com/feeds/revision/site/siteName/5409745539831916487"/> <link rel="http://schemas.google.com/sites/2008#current" type="application/atom+xml" href="https://sites.google.com/feeds/content/site/siteName/5409745539831916487"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/activity/site/siteName/127448462987345884"/> <author> <name>User3</name> <email>user3@gmail.com</email> </author> </entry> </feed>
দ্রষ্টব্য : এই ফিডে অ্যাক্সেসের জন্য প্রয়োজন যে আপনি একজন সহযোগী বা সাইটের মালিক। আপনার ক্লায়েন্টকে অবশ্যই সঠিক Authorization
শিরোনাম পাঠাতে হবে এবং অনুমোদনের অনুরোধে প্রাপ্ত টোকেনটি উল্লেখ করতে হবে।
রিভিশন ফিড
যেকোনো বিষয়বস্তুর এন্ট্রির জন্য পুনর্বিবেচনার ইতিহাস আনতে, এন্ট্রির রিভিশন লিঙ্কে একটি HTTP GET
পাঠান:
https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID
ফিড প্যারামিটার | বর্ণনা |
---|---|
domainName | ' site ' বা আপনার G Suite হোস্ট করা ডোমেনের ডোমেন (যেমন example.com )। |
siteName | আপনার সাইটের ওয়েবস্পেস নাম; সাইটের URL এ পাওয়া যায় (যেমন myCoolSite )। |
একটি প্রদত্ত পৃষ্ঠা/মন্তব্য/অ্যাটাচমেন্ট/লিস্টেটেমের জন্য রিভিশন লিঙ্ক খুঁজতে, প্রথমে কনটেন্ট ফিড থেকে এর CONTENT_ENTRY_ID ব্যবহার করে এন্ট্রিটি পুনরুদ্ধার করুন। পুনরুদ্ধার করা এন্ট্রিতে রিভিশন ফিডে একটি <atom:link>
থাকবে। যেমন:
<link rel="http://schemas.google.com/sites/2008#revision" type="application/atom+xml" href="https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID"/>
উদাহরণ অনুরোধ এবং প্রতিক্রিয়া:
GET /feeds/revision/domainName/siteName/CONTENT_ENTRY_ID HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> HTTP/1.1 200 OK <?xml version="1.0" encoding="UTF-8"?> <feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0"> <id>https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID</id> <updated>2009-09-10T04:33:35.337Z</updated> <title>Revisions</title> <link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID"/> <generator version="1" uri="http://sites.google.com">Google Sites</generator> <openSearch:startIndex>1</openSearch:startIndex> <entry gd:etag="W/"CU4GQmA9WxNRFUg.""> <id>https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID/2</id> <updated>2009-09-10T03:38:42.045Z</updated> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webpage" label="webpage"/> <title>Home</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">Latest content here</div> </content> <link rel="alternate" type="text/html" href="http://sites.google.com/domainName/siteName/CONTENT_ENTRY_ID/system/app/pages/admin/compare?wuid=wuid%3Agx%3A4f67c7&rev1=2"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID/2"/> <author> <name>User</name> <email>user@gmail.com</email> </author> <sites:pageName>home</sites:pageName> <sites:revision>2</sites:revision> </entry> <entry gd:etag="W/"CU8DQ388eSl7ImA9WxNRFUg.""> <id>https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID/1</id> <updated>2009-09-10T03:37:52.171Z</updated> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webpage" label="webpage"/> <title>Home</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">Older content here</div> </content> <link rel="alternate" type="text/html" href="http://sites.google.com/domainName/siteName/CONTENT_ENTRY_ID/system/app/pages/admin/compare?wuid=wuid%3Agx%3A4bc7&rev1=1"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID/1"/> <author> <name>User</name> <email>user@gmail.com</email> </author> <sites:pageName>home</sites:pageName> <sites:revision>1</sites:revision> </entry> </feed>
দ্রষ্টব্য : এই ফিডে অ্যাক্সেসের জন্য প্রয়োজন যে আপনি একজন সহযোগী বা সাইটের মালিক। আপনার ক্লায়েন্টকে অবশ্যই সঠিক Authorization
শিরোনাম পাঠাতে হবে এবং অনুমোদনের অনুরোধে প্রাপ্ত টোকেনটি উল্লেখ করতে হবে।
বিষয়বস্তু ফিড
বিষয়বস্তু পুনরুদ্ধার করা হচ্ছে
বিষয়বস্তু ফিড একটি সাইটের বর্তমান বিষয়বস্তু তালিকাভুক্ত করে। নিম্নলিখিত URL-এ একটি প্রমাণীকৃত GET
অনুরোধ পাঠান:
https://sites.google.com/feeds/content/domainName/siteName
ফিড প্যারামিটার | বর্ণনা |
---|---|
domainName | ' site ' বা আপনার G Suite হোস্ট করা ডোমেনের ডোমেন (যেমন example.com )। |
siteName | আপনার সাইটের ওয়েবস্পেস নাম; সাইটের URL এ পাওয়া যায় (যেমন myCoolSite )। |
ফলাফল হল একটি ফিড যা সাইটের কন্টেন্ট এন্ট্রির প্রথম পৃষ্ঠা তালিকাভুক্ত করে। ফিডের প্রতিটি এন্ট্রি একটি ভিন্ন ধরনের বিষয়বস্তু এন্ট্রিকে প্রতিনিধিত্ব করবে, যেমন একটি webpage
, filecabinet
, attachment
, comment
ইত্যাদি৷ <category scheme="http://schemas.google.com/g/2005#kind">
উপাদান প্রবেশের ধরন নির্ধারণ করে। সমর্থন kind
মানগুলির একটি তালিকার জন্য রেফারেন্স গাইড দেখুন।
দ্রষ্টব্য : এই ফিডের প্রমাণীকরণের প্রয়োজন হতে পারে বা নাও হতে পারে; সাইটের শেয়ারিং অনুমতির উপর নির্ভর করে। যদি সাইটটি অ-পাবলিক হয়, আপনার ক্লায়েন্টকে অবশ্যই সঠিক Authorization
শিরোনাম পাঠাতে হবে (উপরের উদাহরণে দেখা গেছে) এবং অনুমোদনের অনুরোধে প্রাপ্ত টোকেনটি উল্লেখ করতে হবে।
GET /feeds/content/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> HTTP/1.1 200 OK <?xml version="1.0" encoding="UTF-8"?> <feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0"> <id>https://sites.google.com/feeds/content/domainName/siteName</id> <updated>2009-08-31T01:39:20.286Z</updated> <title>Content</title> <link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName"/> <link rel="http://schemas.google.com/g/2005#post" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName"/> <link rel="http://schemas.google.com/g/2005#batch" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/batch""/> <link rel="next" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/?start-index=2"/> <generator version="1" uri="http://sites.google.com">Google Sites</generator> <openSearch:startIndex>1</openSearch:startIndex> <entry gd:etag="W/"Ck8GQXk7fil7ImA9WxNSFk0.""> <id>https://sites.google.com/feeds/content/domainName/siteName/7322156894</id> <updated>2009-08-30T02:53:40.706Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-30T02:53:40.706Z</app:edited> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webpage" label="webpage"/> <title>Subpage</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">Page html content here</div> </content> <link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/6492205817"/> <link rel="alternate" type="text" href="http://sites.google.com/site/siteName/subpage"/> <link rel="http://schemas.google.com/sites/2008#revision" type="application/atom+xml" href="https://sites.google.com/feeds/revision/domainName/siteName/7322156894"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/7322156894"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/7322156894"/> <author> <name>User</name> <email>user@gmail.com</email> </author> <sites:pageName>subpage</sites:pageName> <sites:revision>5</sites:revision> </entry> <entry gd:etag="W/"CkMBQH08fCl7ImA9WxNSFk0.""> <id>https://sites.google.com/feeds/content/domainName/siteName/5930635231</id> <updated>2009-08-30T02:47:31.374Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-30T02:47:31.374Z</app:edited> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#listitem" label="listpage"/> <title/> <link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/5930635231"/> <link rel="http://schemas.google.com/sites/2008#revision" type="application/atom+xml" href="https://sites.google.com/feeds/revision/domainName/siteName/5930635231"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/5930635231"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/5930635231"/> <author> <name>User</name> <email>user@gmail.com</email> </author> <sites:revision>1</sites:revision> <gs:field index="A" name="Issue/Feature">Implement cool feature X</gs:field> <gs:field index="B" name="Priority">P2</gs:field> <gs:field index="C" name="Owner"/> <gs:field index="D" name="Resolved"/> </entry> <entry gd:etag="W/"AkYHQ3ozcCl7ImA9WxJaE08.""> <id>https://sites.google.com/feeds/content/domainName/siteName/1265948545471894517</id> <updated>2009-08-03T19:35:32.488Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-03T19:35:32.488Z</app:edited> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#filecabinet" label="filecabinet"/> <title>files</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">Page html content here</div> </content> <link rel="alternate" type="text" href="https://sites.google.com/domainName/siteName/files"/> <link rel="http://schemas.google.com/sites/2008#revision" type="application/atom+xml" href="https://sites.google.com/feeds/revision/domainName/siteName/12671894517"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/12671894517"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/12671894517"/> <author> <name>User</name> <email>user@gmail.com</email> </author> <gd:feedLink href="httpn://sites.google.com/feeds/content/domainName/siteName?parent=12671894517"/> <sites:pageName>files</sites:pageName> <sites:revision>1</sites:revision> </entry> ... </feed>
দ্রষ্টব্য : এটি শুধুমাত্র প্রথম কয়েকটি ফলাফল। সম্পূর্ণ কন্টেন্ট ফিডের মাধ্যমে পৃষ্ঠা করতে, ফিডের 'পরবর্তী' লিঙ্কটি অনুসরণ করুন:
<link rel="next" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/?start-index=2"/>
অ্যাটমের সাধারণ উপাদানগুলির ব্যাখ্যার জন্য, Google ডেটা প্রোটোকল রেফারেন্স দেখুন। যে উপাদানগুলি ক্লাসিক সাইট এপিআই-এর একটি নির্দিষ্ট অর্থ রাখে সেগুলি নীচে বর্ণনা করা হয়েছে৷ কিছু ধরণের এন্ট্রির অতিরিক্ত বৈশিষ্ট্য থাকবে (নীচে তালিকাভুক্ত নয়), অন্যরা থাকবে না। উদাহরণস্বরূপ, একটি listitem
এন্ট্রিতে <gs:field>
উপাদান থাকতে পারে, যখন একটি webpage
এন্ট্রি থাকে না।
উপাদান | বর্ণনা |
---|---|
<content ...> | ভিতরের টেক্সট হল পৃষ্ঠার HTML বডি। কিছু এন্ট্রির জন্য (যেমন সংযুক্তি), এই উপাদানটিতে ফাইলের দিকে নির্দেশ করে একটি src বৈশিষ্ট্য থাকবে। |
<link rel="alternate" ...> | Google Sites-এ পৃষ্ঠা বা আইটেমের লিঙ্ক। |
<link rel="http://schemas.google.com/sites/2008#revision" ...> | href অ্যাট্রিবিউট পয়েন্টগুলি এন্ট্রির রিভিশন ফিডে। |
<link rel="http://schemas.google.com/sites/2008#parent" ...> | href অ্যাট্রিবিউট পয়েন্টগুলি এন্ট্রির প্যারেন্ট এন্ট্রিতে। |
<link rel="http://schemas.google.com/sites/2008#template" ...> | href অ্যাট্রিবিউট পয়েন্টগুলি এন্ট্রির টেমপ্লেট পৃষ্ঠায়। |
<category scheme="http://schemas.google.com/g/2005#kind" ...> | label হল এন্ট্রির ধরন। |
<category term="http://schemas.google.com/g/2005#template" ...> | label=template এন্ট্রিকে বোঝায় একটি টেমপ্লেট। |
<gd:feedLink> | href এন্ট্রির পিতামাতার সন্তানদের বৈশিষ্ট্য পয়েন্ট। |
<sites:pageName> | পৃষ্ঠার ওয়েবস্পেস নাম; পৃষ্ঠার URL-এর নামের সাথে সঙ্গতিপূর্ণ। |
<sites:revision> | বর্তমান রিভিশন নম্বর। |
বিষয়বস্তু ফিড ক্যোয়ারী উদাহরণ
আপনি কিছু স্ট্যান্ডার্ড Google ডেটা API ক্যোয়ারী প্যারামিটার এবং ক্লাসিক সাইট API-এর জন্য নির্দিষ্ট কিছু ব্যবহার করে সামগ্রী ফিড অনুসন্ধান করতে পারেন। আরো বিস্তারিত তথ্য এবং সমর্থিত পরামিতিগুলির একটি সম্পূর্ণ তালিকার জন্য, রেফারেন্স গাইড দেখুন।
নির্দিষ্ট এন্ট্রি ধরনের পুনরুদ্ধার করা হচ্ছে
শুধুমাত্র একটি নির্দিষ্ট ধরনের এন্ট্রি আনতে, kind
প্যারামিটার ব্যবহার করুন। এই উদাহরণটি শুধুমাত্র webpage
এন্ট্রি প্রদান করে:
GET /feeds/content/domainName/siteName?kind=webpage
একাধিক এন্ট্রি টাইপ ফেরত দিতে, প্রতিটি kind
',' দিয়ে আলাদা করুন। এই উদাহরণটি filecabinet
এবং listpage
এন্ট্রি প্রদান করে:
GET /feeds/content/domainName/siteName?kind=filecabinet,listpage
বিকল্পভাবে, আপনি kind
প্যারামিটারের পরিবর্তে একটি Google ডেটা /-/category
ক্যোয়ারির জন্য স্ট্যান্ডার্ড ফর্ম্যাট ব্যবহার করতে পারেন:
GET /feeds/content/domainName/siteName/-/filecabinet|listpage
পৃষ্ঠা টেমপ্লেট পুনরুদ্ধার করা হচ্ছে
এই উদাহরণটি শুধুমাত্র template
পৃষ্ঠাগুলি প্রদান করে:
GET /feeds/content/domainName/siteName/-/template
সমস্ত এন্ট্রি প্রকার ফেরত দিতে এবং template
পৃষ্ঠাগুলি অন্তর্ভুক্ত করতে, ব্যবহার করুন:
GET /feeds/content/domainName/siteName/-/template|-template
পথ দ্বারা একটি পৃষ্ঠা পুনরুদ্ধার করা হচ্ছে
আপনি যদি Google সাইটের মধ্যে একটি পৃষ্ঠার আপেক্ষিক পথ জানেন, আপনি সেই নির্দিষ্ট পৃষ্ঠাটি আনতে path
প্যারামিটার ব্যবহার করতে পারেন। এই উদাহরণটি http://sites.google.com/ site / siteName /path/to/the/page
এ অবস্থিত পৃষ্ঠাটি ফিরিয়ে দেবে:
GET /feeds/content/domainName/siteName?path=/path/to/the/page
একটি মূল পৃষ্ঠার অধীনে সমস্ত এন্ট্রি পুনরুদ্ধার করা হচ্ছে
আপনি যদি একটি পৃষ্ঠার এন্ট্রি আইডি জানেন, তাহলে আপনি এর সমস্ত চাইল্ড এন্ট্রি (যদি থাকে) আনার জন্য parent
প্যারামিটার ব্যবহার করতে পারেন:
GET /feeds/content/domainName/siteName?parent=CONTENT_ENTRY_ID
খসড়া বা মুছে ফেলা এন্ট্রি সহ
খসড়া বা মুছে ফেলা এন্ট্রিগুলি অন্তর্ভুক্ত করতে, যথাক্রমে include-drafts
বা include-deleted
পরামিতিগুলি ব্যবহার করুন। এই উদাহরণে বিষয়বস্তু ফিডে খসড়া এন্ট্রি রয়েছে:
GET /feeds/content/domainName/siteName?include-drafts=true
সম্পূর্ণ পাঠ্য অনুসন্ধান
একটি সাইটের সমগ্র বিষয়বস্তু জুড়ে অনুসন্ধান করতে, একটি পূর্ণ-পাঠ্য অনুসন্ধান ইস্যু করতে q
প্যারামিটার ব্যবহার করুন:
GET /feeds/content/domainName/siteName?q=Text%20I%20am%20looking%20for
সামগ্রী তৈরি করা
কন্টেন্ট ফিডে একটি HTTP POST
পাঠিয়ে নতুন কন্টেন্ট (ওয়েবপেজ, লিস্টপেজ, ফাইল ক্যাবিনেট পেজ, অ্যানাউন্সমেন্ট পেজ ইত্যাদি) তৈরি করা যেতে পারে:
https://sites.google.com/feeds/content/domainName/siteName
সমর্থিত এন্ট্রি প্রকারের তালিকার জন্য, রেফারেন্স গাইডে kind
প্যারামিটার দেখুন।
নতুন আইটেম/পৃষ্ঠা তৈরি করা
এই উদাহরণটি সাইটের শীর্ষ-স্তরের অধীনে একটি নতুন webpage
তৈরি করে, পৃষ্ঠার মূল অংশের জন্য কিছু XHTML অন্তর্ভুক্ত করে এবং শিরোনামটিকে 'নতুন ওয়েবপেজ শিরোনাম'-এ সেট করে:
POST /feeds/content/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Length: 328 Content-Type: application/atom+xml <entry xmlns="http://www.w3.org/2005/Atom"> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webpage" label="webpage"/> <title>New Webpage Title</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">HTML body goes here</div> </content> </entry>
সফল হলে, সার্ভার একটি 201 Created
এবং এন্ট্রির একটি অনুলিপি সহ প্রতিক্রিয়া জানায়৷
কাস্টম URL পাথের অধীনে আইটেম/পৃষ্ঠা তৈরি করা
ডিফল্টরূপে, আগের উদাহরণটি URL http://sites.google.com/ domainName / siteName /new-webpage-title
এর অধীনে তৈরি করা হবে এবং 'নতুন ওয়েবপৃষ্ঠা শিরোনাম'-এর একটি পৃষ্ঠা শিরোনাম থাকবে। অর্থাৎ, <atom:title>
URL-এর জন্য new-webpage-title
এ স্বাভাবিক করা হয়েছে। একটি পৃষ্ঠার URL পাথ কাস্টমাইজ করতে, আপনি <sites:pageName>
উপাদান সেট করতে পারেন।
এই উদাহরণটি 'ফাইল স্টোরেজ'-এর একটি পৃষ্ঠা শিরোনাম সহ একটি নতুন filecabinet
তৈরি করে, কিন্তু <sites:pageName>
উপাদানটি নির্দিষ্ট করে URL http://sites.google.com/ domainName / siteName /files
অধীনে পৃষ্ঠা তৈরি করে।
POST /feeds/content/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Length: 393 Content-Type: application/atom+xml <entry xmlns="http://www.w3.org/2005/Atom" xmlns:sites="http://schemas.google.com/sites/2008"> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#filecabinet" label="filecabinet"/> <title>File Storage</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">A list of files is below.</div> </content> <sites:pageName>files</sites:pageName> </entry>
সার্ভার একটি পৃষ্ঠার URL পাথ নামকরণের জন্য নিম্নলিখিত অগ্রাধিকার নিয়ম ব্যবহার করে:
-
<sites:pageName>
, যদি উপস্থিত থাকে।az, AZ, 0-9, -, _
সন্তুষ্ট করতে হবে। -
<atom:title>
, pageName উপস্থিত না থাকলে অবশ্যই শূন্য হবে না। সাধারণীকরণ হল হোয়াইটস্পেসকে '-' এ ছাঁটাই করা এবংaz, AZ, 0-9, -, _
সাথে মেলে না এমন অক্ষরগুলি সরিয়ে ফেলা।
একটি উদাহরণ হিসাবে, 'Custom_Page2' সার্ভার দ্বারা গৃহীত হবে।
সাবপেজ তৈরি করা হচ্ছে
একটি অভিভাবক পৃষ্ঠার অধীনে সাবপেজ (শিশু) তৈরি করতে, আপনার নতুন অ্যাটম এন্ট্রিতে একটি <link rel="http://schemas.google.com/sites/2008#parent">
অন্তর্ভুক্ত করুন৷ পিতামাতার এন্ট্রির স্ব লিঙ্কে লিঙ্কের href
অ্যাট্রিবিউট সেট করুন।
এই উদাহরণটি এন্ট্রি ID PARENT_ENTRY_ID
সহ একটি অভিভাবক ঘোষণা পৃষ্ঠার অধীনে 'ঘোষণা' শিরোনাম সহ একটি নতুন announcement
তৈরি করে। পৃষ্ঠার মূল অংশের জন্য XHTML সামগ্রীও অন্তর্ভুক্ত করা হয়েছে:
POST /feeds/content/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Length: 470 Content-Type: application/atom+xml <entry xmlns="http://www.w3.org/2005/Atom"> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#announcement" label="announcement"/> <link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/PARENT_ENTRY_ID"/> <title>announcement</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">This weekend. My place.</div> </content> </entry>
পৃষ্ঠা টেমপ্লেট
পৃষ্ঠা টেমপ্লেট তৈরি করা হচ্ছে
একটি পৃষ্ঠা টেমপ্লেট তৈরি করার প্রক্রিয়াটি নতুন আইটেম/পৃষ্ঠাগুলি তৈরি করা এবং সাবপেজ তৈরি করার মতোই। পার্থক্য হল 'http://schemas.google.com/g/2005#template'-এ সেট করা শব্দ এবং লেবেল সহ category
যোগ করা ' এবং 'টেমপ্লেট', যথাক্রমে।
এই উদাহরণটি একটি নতুন webpage
টেমপ্লেট তৈরি করে।
POST /feeds/content/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Length: 464 Content-Type: application/atom+xml <entry xmlns="http://www.w3.org/2005/Atom" xmlns:sites="http://schemas.google.com/sites/2008"> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webpage" label="webpage"/> <category scheme="http://schemas.google.com/g/2005#labels" term="http://schemas.google.com/g/2005#template" label="template"/> <title>Webpage Template</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">This weekend. My place.</div> </content> </entry>
একটি টেমপ্লেট থেকে পৃষ্ঠা তৈরি করা
পৃষ্ঠা টেমপ্লেট তৈরি করার মতোই, আপনি একটি পৃষ্ঠা টেমপ্লেটের স্ব-লিঙ্কের দিকে নির্দেশ করে rel='http://schemas.google.com/sites/2008#template' সহ একটি <link>
অন্তর্ভুক্ত করে একটি টেমপ্লেট থেকে একটি নতুন পৃষ্ঠা তৈরি করতে পারেন .
এই উদাহরণটি একটি বিদ্যমান পৃষ্ঠা টেমপ্লেট থেকে একটি নতুন filecabinet
পৃষ্ঠা তৈরি করে যা একটি ফাইল ক্যাবিনেটকে সংজ্ঞায়িত করে।
POST /feeds/content/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Length: 464 Content-Type: application/atom+xml <entry xmlns="http://www.w3.org/2005/Atom" xmlns:sites="http://schemas.google.com/sites/2008"> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#filecabinet" label="filecabinet"/> <title>File Cabinet Page From Template</title> <link rel='http://schemas.google.com/sites/2008#template' type='application/atom+xml' href='https://sites.google.com/feeds/content/domainName/siteName/ENTRY_ID'/> </entry>
দ্রষ্টব্য : একটি <category>
সংজ্ঞায়িত একটি টেমপ্লেট থাকা সত্ত্বেও, আপনার এন্ট্রিতে একটি সহ এখনও প্রয়োজন। এছাড়াও মনে রাখবেন, আপনি যদি একটি <content>
উপাদান অন্তর্ভুক্ত করেন, সার্ভার এটি প্রত্যাখ্যান করবে।
ফাইল আপলোড করা হচ্ছে
ঠিক যেমন Google সাইটগুলিতে, API আপনাকে ফাইল ক্যাবিনেট পৃষ্ঠা এবং মূল পৃষ্ঠাগুলিতে সংযুক্তি আপলোড করার অনুমতি দেয়৷
অভিভাবকের কাছে একটি সংযুক্তি আপলোড করতে, সামগ্রী ফিড URL-এ একটি HTTP POST
অনুরোধ পাঠান:
https://sites.google.com/feeds/content/domainName/siteName
সংযুক্তির মেটাডেটা ধারণকারী <atom:entry>
এর সাথে ফাইল বিষয়বস্তু একত্রিত করতে POST
বডিটি একটি MIME মাল্টিপার্ট অনুরোধ হওয়া উচিত। সংযুক্তিটি কোথায় তৈরি করা হবে তা নির্দিষ্ট করার জন্য <atom:entry>
এর প্যারেন্ট এন্ট্রির সেল্ফ লিঙ্ক উল্লেখ করা উচিত। আরও তথ্যের জন্য সাবপেজ তৈরি করা দেখুন।
সংযুক্তি আপলোড করা হচ্ছে
এখানে PARENT_ENTRY_ID
আইডি সহ একটি ফাইল ক্যাবিনেটে একটি PDF ফাইল আপলোড করার একটি উদাহরণ রয়েছে। সংযুক্তিটি 'পিডিএফ ফাইল' শিরোনাম এবং একটি (ঐচ্ছিক) বর্ণনা, 'এইচআর প্যাকেট' দিয়ে তৈরি করা হবে।
POST /feeds/content/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Length: 7221984 Content-Type: multipart/related; boundary=END_OF_PART --END_OF_PART Content-Type: application/atom+xml <entry xmlns="http://www.w3.org/2005/Atom"> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#attachment" label="attachment"/> <link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/PARENT_ENTRY_ID"/> <title>PDF File</title> <summary>HR packet</summary> </entry> --END_OF_PART Content-Type: application/pdf ... pdf contents here ... --END_OF_PART--
আপলোড সফল হলে, সার্ভার একটি 201 Created
এবং নতুন তৈরি সংযুক্তি এন্ট্রির একটি অনুলিপি সহ প্রতিক্রিয়া জানাবে৷
একটি ফোল্ডারে একটি সংযুক্তি আপলোড করা হচ্ছে৷
একটি filecabinet
বিদ্যমান ফোল্ডারে একটি সংযুক্তি আপলোড করতে, ফোল্ডারের নামের সাথে সেট করা 'টার্ম' বৈশিষ্ট্য সহ একটি বিভাগ অন্তর্ভুক্ত করুন:
<category scheme="http://schemas.google.com/sites/2008#folder" term="FolderName">
ওয়েব সংযুক্তি
ওয়েব সংযুক্তিগুলি বিশেষ ধরণের সংযুক্তি। মূলত, এগুলি ওয়েবের অন্যান্য ফাইলগুলির লিঙ্ক যা আপনি আপনার ফাইল ক্যাবিনেট তালিকায় যুক্ত করতে পারেন৷ এই বৈশিষ্ট্যটি Google Sites UI-তে 'URL দ্বারা ফাইল যোগ করুন' আপলোড পদ্ধতির অনুরূপ।
দ্রষ্টব্য : ওয়েব সংযুক্তি শুধুমাত্র একটি ফাইল ক্যাবিনেটের অধীনে তৈরি করা যেতে পারে। সেগুলি অন্য ধরনের পেজে আপলোড করা যাবে না।
এই উদাহরণটি ID FILECABINET_ENTRY_ID
দ্বারা উল্লেখ করা ফাইলক্যাবিনেটের অধীনে একটি webattachment
তৈরি করে। এর শিরোনাম এবং (ঐচ্ছিক) বর্ণনা যথাক্রমে 'GoogleLogo' এবং 'nice colors'-এ সেট করা আছে।
POST /feeds/content/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Type: application/atom+xml Content-Length: 531 <entry xmlns="http://www.w3.org/2005/Atom"> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webattachment" label="webattachment"/> <link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/FILECABINET_ENTRY_ID"/> <title>GoogleLogo</title> <summary>nice colors</summary> <content type="image/gif" src="http://www.google.com/images/logo.gif"></content> </entry>
POST
ব্যবহারকারীর ফাইল ক্যাবিনেটে একটি লিঙ্ক তৈরি করে যা 'http://www.google.com/images/logo.gif'-এ চিত্রটিকে নির্দেশ করে৷
বিষয়বস্তু আপডেট করা হচ্ছে
যে কোনো পৃষ্ঠার মেটাডেটা (শিরোনাম, পৃষ্ঠার নাম, ইত্যাদি) এবং পৃষ্ঠার বিষয়বস্তু edit
লিঙ্কে একক PUT
অনুরোধের সাথে সম্পাদনা করা যেতে পারে। অনুরোধের অংশে আপডেট হওয়া পৃষ্ঠার বর্ণনা দিয়ে একটি এটম এন্ট্রি থাকা উচিত। এই নিয়মের ব্যতিক্রম হল একটি সংযুক্তি এন্ট্রি, যেখানে এন্ট্রিটি শুধুমাত্র সংযুক্তির মেটাডেটা আপডেট করতে ব্যবহার করা যেতে পারে। সংযুক্ত ফাইলের বিষয়বস্তু পরিবর্তন করতে, সংযুক্তির edit-media
লিঙ্কে একটি PUT
অনুরোধের মূল অংশ হিসাবে কেবল কাঁচা ডেটা অন্তর্ভুক্ত করুন। আপনি একটি MIME মাল্টিপার্ট অনুরোধ ব্যবহার করে একবারে মেটাডেটা এবং সংযুক্ত ফাইল বিষয়বস্তু উভয় আপডেট করতে পারেন।
আপনার আপডেট অন্য ক্লায়েন্টের পরিবর্তনগুলিকে ওভাররাইট করে না তা নিশ্চিত করতে, মূল এন্ট্রির ETag মান অন্তর্ভুক্ত করুন। আপনি একটি HTTP If-Match
হেডারে ETag মান প্রদান করে বা আপডেট করা এন্ট্রিতে মূল এন্ট্রির gd:etag
বৈশিষ্ট্য অন্তর্ভুক্ত করে এটি করতে পারেন। মূল এন্ট্রির ETag মান নির্ধারণ করতে, <entry>
উপাদানের gd:etag
বৈশিষ্ট্য পরীক্ষা করুন। মিডিয়া এন্ট্রির জন্য, মিডিয়ার ETag edit-media
লিঙ্কের gd:etag
অ্যাট্রিবিউটে পাওয়া যেতে পারে।
আপনি এটি পুনরুদ্ধার করার পর অন্য কেউ এটি আপডেট করেছে কিনা তা বিবেচনা না করে আপনি যদি এন্ট্রিটি আপডেট করতে চান, তাহলে If-Match: *
এবং ETag অন্তর্ভুক্ত করবেন না। ETags সম্পর্কে আরও তথ্যের জন্য, Google Data APIs রেফারেন্স গাইড দেখুন।
একটি আইটেমের মেটাডেটা বা HTML বিষয়বস্তু আপডেট করা হচ্ছে
একটি এন্ট্রির মেটাডেটা বা HTML বিষয়বস্তু আপডেট করতে, এন্ট্রির edit
লিঙ্কে একটি HTTP PUT
পাঠান৷
নিম্নলিখিত পরিবর্তনগুলির সাথে একটি listpage
এন্ট্রি (এর আইডি ENTRY_ID
দ্বারা উপস্থাপিত) আপডেট করার একটি উদাহরণ নিম্নলিখিত:
- শিরোনাম 'আপডেট করা বিষয়বস্তু' এ পরিবর্তন করা হয়েছে
- এইচটিএমএল কন্টেন্ট আপডেট করা হয়েছে
- তালিকার প্রথম কলামের শিরোনাম 'মালিক'-এ আপডেট করা হয়েছে
- পৃষ্ঠার URL পাথ
<sites:pageName>
উপাদান দ্বারা পরিবর্তিত হয়
PUT /feeds/content/domainName/siteName/ENTRY_ID Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Length: 816 Content-Type: application/atom+xml <entry xmlns="http://www.w3.org/2005/Atom" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:gd="http://schemas.google.com/g/2005" gd:etag="W/"CEEBRn0ymA9WxJWEUw.""> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#listpage" label="listpage"/> <title>Updated Title</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">Updated Content</div> </content> <gs:worksheet name="listpage"/> <gs:header row="1"/> <gs:data startRow="2"> <gs:column index="A" name="Owner"/> <gs:column index="B" name="Decription"/> <gs:column index="C" name="Completed"/> </gs:data> <sites:pageName>newPagePath</sites:pageName> </entry>
দ্রষ্টব্য: এন্ট্রি (সার্ভার দ্বারা প্রত্যাবর্তিত) উপরের উদাহরণের চেয়ে বেশি উপাদান ধারণ করবে।
একটি সংযুক্তি এর বিষয়বস্তু প্রতিস্থাপন
নীচে একটি সংযুক্তির বিষয়বস্তু প্রতিস্থাপনের একটি উদাহরণ রয়েছে, কিন্তু এটির মেটাডেটা অপরিবর্তিত রয়েছে৷ যেহেতু অনুরোধে নতুন বিষয়বস্তু রয়েছে, সংযুক্তি এন্ট্রির edit-media
লিঙ্ক ব্যবহার করা হয়েছে।
PUT /feeds/media/content/domainName/siteName/ATTACHMENT_ENTRY_ID Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Length: 70581 Content-Type: application/msword ... doc contents here ...
সংযুক্তি মেটাডেটা + বিষয়বস্তু আপডেট করা হচ্ছে
নীচে একই সময়ে একটি সংযুক্তির মেটাডেটা এবং এর বিষয়বস্তু উভয় আপডেট করার একটি উদাহরণ রয়েছে৷ সংযুক্তির নাম 'নতুন শিরোনাম'-এ আপডেট করা হবে এবং এর বিষয়বস্তু একটি .zip ফাইলের বিষয়বস্তুর সাথে প্রতিস্থাপিত হবে। যেহেতু অনুরোধে নতুন ফাইলের বিষয়বস্তু রয়েছে, সংযুক্তি এন্ট্রির edit-media
লিঙ্ক ব্যবহার করা হয়েছে।
মনে রাখবেন যে মেটাডেটার জন্য ETag অন্তর্ভুক্ত করা মিডিয়া বিষয়বস্তুর জন্যও একটি অন্তর্নিহিত If-Match
প্রদান করে, কারণ মিডিয়া বিষয়বস্তুর যেকোনো আপডেটের ফলে মেটাডেটার ETag পরিবর্তন হয়।
PUT /feeds/media/content/domainName/siteName/ATTACHMENT_ENTRY_ID Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Type: multipart/related; boundary="END_OF_PART" --END_OF_PART Content-Type: application/atom+xml <?xml version='1.0' encoding='UTF-8'?> <entry xmlns="http://www.w3.org/2005/Atom" xmlns:gd="http://schemas.google.com/g/2005" gd:etag="BxAaTxRZAyp7ImBq"> <link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/ATTACHMENT_ENTRY_ID"/> <title>New Title</title> </entry> --END_OF_PART Content-Type: application/zip ... zip contents here ... --END_OF_PART
বিষয়বস্তু মুছে ফেলা হচ্ছে
একটি Google সাইট থেকে একটি আইটেম সরাতে, প্রথমে এন্ট্রিটি পুনরুদ্ধার করুন, তারপর এন্ট্রির edit
URL-এ একটি DELETE
অনুরোধ পাঠান৷ এটি একটি আইটেমের মেটাডেটা বা html সামগ্রী আপডেট করার সময় ব্যবহৃত একই URL।
DELETE /feeds/content/domainName/siteName/ENTRY_ID Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> If-Match: <ETag or * here>
যদি এন্ট্রিটি সফলভাবে মুছে ফেলা হয়, সার্ভারটি HTTP 200 OK
দিয়ে প্রতিক্রিয়া জানায়।
আপনি যদি নিশ্চিত করতে চান যে আপনি এমন একটি এন্ট্রি মুছে ফেলবেন না যা আপনি পুনরুদ্ধার করার পর থেকে অন্য ক্লায়েন্ট দ্বারা পরিবর্তিত হয়েছে, তাহলে একটি HTTP If-Match
শিরোনাম অন্তর্ভুক্ত করুন যাতে মূল এন্ট্রির ETag মান রয়েছে৷ আপনি <entry>
উপাদানের gd:etag
বৈশিষ্ট্য পরীক্ষা করে মূল এন্ট্রির ETag মান নির্ধারণ করতে পারেন।
আপনি এটি পুনরুদ্ধার করার পর অন্য কেউ এটি আপডেট করেছে কিনা তা বিবেচনা না করে আপনি যদি এন্ট্রিটি মুছতে চান, তাহলে If-Match: *
এবং ETag অন্তর্ভুক্ত করবেন না। (এই ক্ষেত্রে, এটি মুছে ফেলার আগে আপনাকে এন্ট্রিটি পুনরুদ্ধার করতে হবে না।)
ETags সম্পর্কে আরও তথ্যের জন্য, Google Data APIs রেফারেন্স গাইড দেখুন।
সংযুক্তি ডাউনলোড করা হচ্ছে
একবার আপনার একটি সংযুক্তি এন্ট্রি হয়ে গেলে, আপনি এন্ট্রির <content>
src লিঙ্কে একটি প্রমাণীকৃত HTTP GET
পাঠিয়ে ফাইলটি ডাউনলোড করতে পারেন। একটি PDF এর সামগ্রী লিঙ্কের একটি উদাহরণ:
<content type="application/pdf" src="http://502377765-a-google-com-s-sites.googlegroups.com/feeds/media/content/domainName/siteName/678942036"/>
ACL ফিড
শেয়ারিং পারমিশন (ACLs) এর ওভারভিউ
ACL ফিডে প্রতিটি ACL এন্ট্রি একটি নির্দিষ্ট সত্তা, হয় একজন ব্যবহারকারী, ব্যবহারকারীদের একটি গোষ্ঠী, একটি ডোমেন বা ডিফল্ট অ্যাক্সেস (যা একটি সর্বজনীন সাইট) এর একটি অ্যাক্সেস ভূমিকা উপস্থাপন করে। এন্ট্রিগুলি শুধুমাত্র স্পষ্ট অ্যাক্সেস সহ সত্তাগুলির জন্য দেখানো হবে - Google Sites UI এর শেয়ারিং স্ক্রিনে "অ্যাক্সেস সহ লোক" প্যানেলে প্রতিটি ই-মেইল ঠিকানার জন্য একটি এন্ট্রি দেখানো হবে৷ এইভাবে, ডোমেন অ্যাডমিনদের দেখানো হবে না, যদিও তাদের একটি সাইটে অন্তর্নিহিত অ্যাক্সেস রয়েছে।
ভূমিকা
ভূমিকা উপাদান একটি অ্যাক্সেস স্তর প্রতিনিধিত্ব করে একটি সত্তা থাকতে পারে। gAcl:role
উপাদানের চারটি সম্ভাব্য মান রয়েছে:
- পাঠক — একজন দর্শক (শুধু-পঠন অ্যাক্সেসের সমতুল্য)।
- লেখক — একজন সহযোগী (পড়া/লেখার অ্যাক্সেসের সমতুল্য)।
- মালিক — সাধারণত সাইটের প্রশাসক (পড়া/লেখার অ্যাক্সেসের সমতুল্য)।
স্কোপ
স্কোপ উপাদানটি সেই সত্তাকে উপস্থাপন করে যার এই অ্যাক্সেস লেভেল রয়েছে। gAcl:scope
উপাদানের পাঁচটি সম্ভাব্য প্রকার রয়েছে:
- ব্যবহারকারী — একটি ই-মেইল ঠিকানা মান, যেমন "user@gmail.com"।
- গ্রুপ — একটি Google গ্রুপ ই-মেইল ঠিকানা, যেমন "group@domain.com"।
- ডোমেইন — একটি G Suite ডোমেন নাম, যেমন "domain.com"।
- invite — এমন একজন ব্যবহারকারী যাকে সাইটে আমন্ত্রণ জানানো হয়েছে, কিন্তু সাইটের জন্য ACL-তে এখনো যোগ করা হয়নি। (যদি gdata 1.3 বা নিচে উল্লেখ করা থাকে তাহলে উপলব্ধ নয়।)
- ডিফল্ট — "ডিফল্ট" টাইপের একটি সম্ভাব্য সুযোগ রয়েছে, যার কোনো মান নেই (যেমন
<gAcl:scope type="default">
)। এই নির্দিষ্ট স্কোপটি কোনও পাবলিক সাইটে ডিফল্টরূপে যে কোনও ব্যবহারকারীর অ্যাক্সেস নিয়ন্ত্রণ করে।
দ্রষ্টব্য : ডোমেনগুলির একটি gAcl:role
মান "মালিক" অ্যাক্সেসে সেট করা থাকতে পারে না, তারা শুধুমাত্র পাঠক বা লেখক হতে পারে৷
"আমন্ত্রণ" সুযোগ সম্পর্কে।
এপিআই আমন্ত্রণের সুযোগ প্রদান করে যখন আপনি ACL-তে এক বা একাধিক ব্যবহারকারী যোগ করেন যাদের ইতিমধ্যেই কোনো Google অ্যাকাউন্ট নেই। API একটি এমবেডেড টোকেন সহ একটি URL প্রদান করে যা আপনাকে অবশ্যই আপনার আমন্ত্রিত ব্যবহারকারীদের আমন্ত্রণ গ্রহণ করার অনুমতি দিতে হবে।
এই আমন্ত্রণ পদ্ধতিটি আপনাকে নন-Google ব্যবহারকারীদের আমন্ত্রণ জানাতে দেয় যে তারা কোন ইমেল ঠিকানা ব্যবহার করতে চায় তার পূর্বে জ্ঞান ছাড়াই। যতক্ষণ পর্যন্ত ব্যবহারকারীরা এম্বেড করা টোকেন সহ আমন্ত্রণ URL-এ ক্লিক করেন, ততক্ষণ তারা যে কোনও ইমেল ঠিকানা ব্যবহার করে অ্যাক্সেসের জন্য সাইন আপ করতে পারেন৷ উপরন্তু, একাধিক ব্যবহারকারী আমন্ত্রণ গ্রহণ করার জন্য সম্ভাব্যভাবে এই URL ব্যবহার করতে পারেন, তাই একজন ব্যবহারকারী বা ব্যবহারকারীদের একটি গোষ্ঠীকে আমন্ত্রণ জানালে এটি কার্যকর হতে পারে।
দ্রষ্টব্য: "আমন্ত্রণ" সুযোগ শুধুমাত্র gdata সংস্করণ 1.4 এবং তার উপরে উপলব্ধ। আপনি যদি স্পষ্টভাবে 1.3 বা নীচে উল্লেখ করেন তবে এটি কাজ করবে না।
ACL ফিড পুনরুদ্ধার করা হচ্ছে
ACL ফিড একটি সাইটের শেয়ারিং অনুমতি নিয়ন্ত্রণ করতে ব্যবহার করা যেতে পারে এবং নিম্নলিখিত URI-এর মাধ্যমে অ্যাক্সেসযোগ্য:
https://sites.google.com/feeds/acl/site/domainName/siteName
ফিড প্যারামিটার | বর্ণনা |
---|---|
domainName | ' site ' বা আপনার G Suite হোস্ট করা ডোমেনের ডোমেন (যেমন example.com )। |
siteName | আপনার সাইটের ওয়েবস্পেস নাম; সাইটের URL এ পাওয়া যায় (যেমন myCoolSite )। |
এটি লক্ষণীয় যে সাইট ফিডে প্রতিটি এন্ট্রিতে এই ফিডের একটি লিঙ্ক রয়েছে:
<link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName"/>
একটি সাইটের শেয়ারিং অনুমতি পুনরুদ্ধার করতে, ACL ফিড URI-তে পাঠান এবং HTTP GET
:
GET /feeds/acl/site/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here>
সার্ভার একটি 200 OK
এবং ACL এন্ট্রিগুলির একটি ফিড দিয়ে প্রতিক্রিয়া জানাবে:
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:gAcl="http://schemas.google.com/acl/2007" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0"> <id>https://sites.google.com/feeds/acl/site/domainName/siteName</id> <updated>2009-12-03T22:01:05.963Z</updated> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/acl/2007#accessRule"/> <title>Acl</title> <link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName"/> <link rel="http://schemas.google.com/g/2005#post" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName"/> <generator version="1" uri="http://sites.google.com">Google Sites</generator> <openSearch:startIndex>1</openSearch:startIndex> <entry> <id>https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserA%40gmail.com</id> <updated>2009-12-03T22:01:05.963Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-03T22:01:05.963Z</app:edited> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/acl/2007#accessRule"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserA%40google.com"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserA%40google.com"/> <gAcl:scope type="user" value="userA@google.com"/> <gAcl:role value="owner"/> </entry> <entry> <id>https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserB%40gmail.com</id> <updated>2009-12-03T22:01:05.963Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-03T22:01:05.963Z</app:edited> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/acl/2007#accessRule"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserB%40gmail.com"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserB%40gmail.com"/> <gAcl:scope type="user" value="userB@gmail.com"/> <gAcl:role value="writer"/> </entry> <entry> <id>https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserC%40gmail.com</id> <updated>2009-12-03T22:01:05.963Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-03T22:01:05.963Z</app:edited> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/acl/2007#accessRule"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserC%40gmail.com"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserC%40gmail.com"/> <gAcl:scope type="user" value="userC@gmail.com"/> <gAcl:role value="reader"/> </entry> ... </feed>
একটি সাইট শেয়ারিং
ACL ফিড GET
, POST
এবং PUT
অনুরোধ গ্রহণ করে। ACL ফিডে একটি নতুন ভূমিকা ঢোকানোর জন্য, সাইটের ACL ফিডে একটি POST
অনুরোধ জারি করুন৷
দ্রষ্টব্য : নির্দিষ্ট কিছু ACL শেয়ার করা তখনই সম্ভব হতে পারে যদি ডোমেনটি এই ধরনের অনুমতি দেওয়ার জন্য কনফিগার করা থাকে (যেমন যদি G Suite ডোমেনের জন্য ডোমেনের বাইরে শেয়ার করা সক্ষম করা থাকে ইত্যাদি)।
এই উদাহরণটি সাইটে একটি নতুন সহযোগী (লেখক) যোগ করে:
POST /feeds/acl/site/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> <entry xmlns="http://www.w3.org/2005/Atom" xmlns:gAcl='http://schemas.google.com/acl/2007'> <category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/acl/2007#accessRule'/> <gAcl:role value='writer'/> <gAcl:scope type='user' value='new_writer@example.com'/> </entry>
একটি 201 Created
এবং একটি সফল সন্নিবেশে নতুন এন্ট্রি ফেরত দেওয়া হয়েছে:
<entry> <id>https://sites.google.com/feeds/acl/site/domainName/siteName/user%3Anew_writer%40example.com</id> <updated>2009-12-03T22:01:05.963Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-03T22:01:05.963Z</app:edited> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/acl/2007#accessRule"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3Anew_writer%40example.com"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3Anew_writer%40example.com"/> <gAcl:role value='writer'/> <gAcl:scope type='user' value='new_writer@example.com'/> </entry>
"আমন্ত্রণ" সুযোগের মাধ্যমে ব্যবহারকারীদের আমন্ত্রণ জানানো
আপনি যদি এমন ব্যবহারকারীদের যোগ করেন যাদের Google অ্যাকাউন্ট নেই, তাহলে API একটি URL প্রদান করে যা আপনাকে অবশ্যই আমন্ত্রণ জানাতে চান এমন ব্যবহারকারীদের প্রদান করতে হবে। URL-এ ক্লিক করার পরে, তারা একটি বিদ্যমান অ্যাকাউন্ট দিয়ে সাইন ইন করে বা একটি নতুন তৈরি করে সাইটে অ্যাক্সেস পেতে সক্ষম হবে।
একটি সফল আমন্ত্রণ একটি 201 Created
এবং একটি নতুন এন্ট্রি প্রদান করে যাতে ব্যবহারকারীর কাছে আপনাকে পাস করা URLটি অন্তর্ভুক্ত থাকে:
<entry> <id>https://sites.google.com/feeds/acl/site/domainName/siteName/user%3Anew_invite%40example.com</id> <updated>2009-12-03T22:01:05.963Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-03T22:01:05.963Z</app:edited> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/acl/2007#accessRule"/> <link rel="http://schemas.google.com/sites/2008#invite" type="text/html"href="domainName/siteName?invite=inviteToken"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3Anew_invite%40example.com"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3Anew_invite%40example.com"/> <gAcl:role value='writer'/> <gAcl:scope type='invite' value='new_invite%40example.com'/> </entry>
গ্রুপ এবং ডোমেন লেভেল শেয়ারিং
একটি একক ব্যবহারকারীর সাথে একটি সাইট শেয়ার করার মতো, আপনি একটি Google গ্রুপ বা G Suite ডোমেন জুড়ে একটি সাইট শেয়ার করতে পারেন। প্রয়োজনীয় scope
মান নীচে তালিকাভুক্ত করা হয়.
একটি গ্রুপ ইমেল ঠিকানা ভাগ করা:
<gAcl:scope type="group" value="group@example.com"/>
একটি সম্পূর্ণ ডোমেনে শেয়ার করা:
<gAcl:scope type="domain" value="example.com"/>
ডোমেন লেভেলে শেয়ার করা শুধুমাত্র G Suite ডোমেনের জন্য সমর্থিত, এবং শুধুমাত্র সেই ডোমেনের জন্য যেখানে সাইটটি হোস্ট করা হয়েছে। উদাহরণস্বরূপ http://sites.google.com/a/domain1.com/siteA শুধুমাত্র domain1.com-এর সাথে সমগ্র সাইট শেয়ার করতে পারে, domain2.com নয়। G Suite ডোমেনে হোস্ট করা নয় এমন সাইটগুলি (যেমন http://sites.google.com/site/siteB) ডোমেনগুলিকে আমন্ত্রণ জানাতে পারে না৷
ভাগ করার অনুমতি পরিবর্তন করা হচ্ছে
একটি ACL এন্ট্রি আপডেট করার জন্য, প্রয়োজনীয় এন্ট্রিটি সংশোধন করুন এবং এন্ট্রির edit
লিঙ্কে একটি HTTP PUT
অনুরোধ জারি করুন, যা কেবল একটি <link>
উপাদান, যার 'rel' বৈশিষ্ট্য 'সম্পাদনা' এ সেট করা আছে। পূর্ববর্তী উদাহরণের জন্য, সেই লিঙ্কটি হল:
<link rel='edit' type='application/atom+xml' href='https://sites.google.com/feeds/acl/site/domainName/siteName/user%3Anew_writer%40example.com'/>
নীচের স্নিপেট new_writer@gmail.com
এর ভূমিকাকে 'পাঠক'-এ পরিবর্তন করে:
PUT /feeds/acl/site/domainName/siteName/user%3Anew_writer%40example.com HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> <entry xmlns="http://www.w3.org/2005/Atom" xmlns:gAcl='http://schemas.google.com/acl/2007'> <category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/acl/2007#accessRule'/> <gAcl:role value='reader'/> <gAcl:scope type='user' value='new_writer@gmail.com'/> </entry>
শেয়ারিং অনুমতি সরানো হচ্ছে
এই ব্যবহারকারীর জন্য অনুমতিগুলি সরাতে, একই edit
লিঙ্কে একটি DELETE
অনুরোধ জারি করুন যা PUT
অনুরোধের জন্য ব্যবহৃত হয়েছিল:
DELETE /feeds/acl/site/domainName/siteName/user%3Anew_writer%40example.com HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here>
সার্ভার 200 OK
দিয়ে সাড়া দেবে।
বিশেষ বিষয়
আবার একটি ফিড বা এন্ট্রি পুনরুদ্ধার করা হচ্ছে
যদি আপনি একটি ফিড বা এন্ট্রি পুনরুদ্ধার করতে চান যা আপনি আগে পুনরুদ্ধার করেছেন, আপনি সার্ভারকে তালিকা বা এন্ট্রি পাঠাতে বলার মাধ্যমে কার্যকারিতা উন্নত করতে পারেন যদি আপনি এটি শেষবার পুনরুদ্ধার করার পর থেকে এটি পরিবর্তিত হয়।
এই ধরণের শর্তসাপেক্ষ পুনরুদ্ধার করতে, একটি HTTP GET
অনুরোধ পাঠান যাতে একটি HTTP If-None-Match
শিরোনাম অন্তর্ভুক্ত থাকে। শিরোনামে, তালিকার বা এন্ট্রির ETag নির্দিষ্ট করুন, যা আপনি <feed>
উপাদান বা <entry>
উপাদানের gd:etag
বৈশিষ্ট্যে খুঁজে পেতে পারেন।
সাইট ফিড ব্যবহার করে একটি উদাহরণ:
GET /feeds/site/domainName/myOtherTestSite/ GData-Version: 1.4 If-None-Match: W/"Ck8GQXk7fil7ImA9WxNSFk0."
যখন সার্ভার এই অনুরোধটি গ্রহণ করে, তখন এটি পরীক্ষা করে যে আপনি যে আইটেমটি অনুরোধ করেছেন সেটিতে আপনার নির্দিষ্ট করা ETag-এর মতো একই ETag আছে কিনা। যদি ETags মিলে যায়, তাহলে আইটেমটি পরিবর্তিত হয়নি এবং সার্ভারটি একটি HTTP 304 Not Modified
স্ট্যাটাস কোড বা একটি HTTP 412 Precodition Failed
স্ট্যাটাস কোড প্রদান করে। এই উভয় স্ট্যাটাস কোড ইঙ্গিত দেয় যে আপনি ইতিমধ্যে যে আইটেমটি পুনরুদ্ধার করেছেন তা আপ-টু-ডেট।
যদি ETags মেলে না, তাহলে আপনি শেষবার অনুরোধ করার পর থেকে আইটেমটি সংশোধন করা হয়েছে এবং সার্ভার আইটেমটি ফেরত দেয়।
ETags সম্পর্কে আরও তথ্যের জন্য, Google Data APIs রেফারেন্স গাইড দেখুন।
ব্যাচ প্রসেসিং
ব্যাচ অনুরোধগুলি আপনার ক্লায়েন্টকে প্রতিটি অপারেশনকে পৃথকভাবে জমা দেওয়ার পরিবর্তে একটি অনুরোধে একাধিক অপারেশন চালানোর ক্ষমতা দেয়।
সার্ভার যতটা সম্ভব অনুরোধ করা পরিবর্তনগুলি সম্পাদন করবে এবং স্থিতি তথ্য ফেরত দেবে যা আপনি প্রতিটি অপারেশনের সাফল্য বা ব্যর্থতার মূল্যায়ন করতে ব্যবহার করতে পারেন। Google ডেটা API-তে ব্যাচ প্রক্রিয়াকরণ সম্পর্কে আরও বিশদ বিবরণের জন্য, Google ডেটা API-এর সাথে ব্যাচ প্রক্রিয়াকরণ দেখুন
একটি ব্যাচ ফিডে প্রতিটি অপারেশন একটি <id> উপাদান আছে, সন্নিবেশ অপারেশন ছাড়া। এই উপাদানটি অনুরোধ URL এর মতোই যা আপনি সাধারণত সামগ্রী ফিড আপডেট, মুছে বা অনুসন্ধান করার সময় ব্যবহার করেন৷ উদাহরণস্বরূপ, যদি আপনি একটি সম্পাদনা আপডেট করছেন, প্রশ্নে এন্ট্রির জন্য edit
লিঙ্কে <id> সেট করুন। এটি লক্ষ্য এন্ট্রি সনাক্ত করতে ব্যবহৃত হয়. নতুন এন্ট্রিগুলিতে <id> উপাদান নেই কারণ সেগুলি এখনও তৈরি করা হয়নি। আপনি পরিবর্তে <batch:id> এ একটি স্ট্রিং মান নির্ধারণ করতে পারেন, যা সার্ভারের প্রতিক্রিয়াতে ফেরত দেওয়া হবে এবং সংশ্লিষ্ট এন্ট্রি দেখতে ব্যবহৃত হবে।
একটি ব্যাচ অনুরোধ করতে, একটি ব্যাচ ফিড তৈরি করুন এবং ফিডের ব্যাচ লিঙ্কে একটি HTTP POST
পাঠান:
<link rel="http://schemas.google.com/g/2005#batch" type="application/atom+xml" href="https://sites.google.com/feeds/content/site/siteName/batch"/>
নীচের উদাহরণটি দেখায় কিভাবে একটি ওয়েবপেজ এন্ট্রি জিজ্ঞাসা, সন্নিবেশ, আপডেট এবং মুছে ফেলতে হয়:
POST /feeds/content/site/siteName/batch HTTP/1.1 Host: sites.google.com Accept: */* If-Match: * GData-Version: 1.4 Authorization: <your authorization header here> <feed xmlns="http://www.w3.org/2005/Atom" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gd="http://schemas.google.com/g/2005" xmlns:batch='http://schemas.google.com/gdata/batch'> <entry> <id>https://sites.google.com/feeds/content/site/siteName/ENTRY_ID1</id> <batch:operation type="query"/> </entry> <entry> <batch:id>1</batch:id> <batch:operation type='insert'/> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webpage" label="webpage"/> <title>New Webpage1</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">HTML body goes here</div> </content> </entry> <entry gd:etag=""YDgpeyI.""> <id>https://sites.google.com/feeds/content/site/siteName/ENTRY_ID2</id> <batch:operation type='update'/> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webpage" label="webpage"/> <title>Updated Title for Webpage2</title> ... <batch:operaation type="update"/> </entry> <entry gd:etag=""YassseyI.""> <id>https://sites.google.com/feeds/content/site/siteName/ENTRY_ID3</id> <batch:operation type='delete'/> </entry> </feed>
ফিরে আসা ফিডে প্রতিটি অপারেশনের জন্য একটি ফলাফল এন্ট্রি থাকবে:
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/"
xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006"
xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch"
xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
<id>https://sites.google.com/feeds/content/site/siteName/ENTRY_ID1</id>
<updated>2009-11-10T22:44:08.369Z</updated>
<title>Batch Feed</title>
<entry gd:etag=""YDgpsdfeyI."">
<id>https://sites.google.com/feeds/content/site/siteName/ENTRY_ID1</id>
<published>2009-08-31T04:42:45.251Z</published>
<updated>2009-10-25T22:46:13.729Z</updated>
<app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-25T22:46:13.671Z</app:edited>
<category scheme="http://schemas.google.com/g/2005#kind"
term="http://schemas.google.com/sites/2008#webpage" label="webpage"/>
<title>Page Title</title>
...
<batch:status code="200" reason="Success"/>
<batch:operation type="query"/>
</entry>
<entry gd:etag=""YDsseyI."">
<id>https://sites.google.com/feeds/content/site/siteName/ENTRY_ID4</id>
<published>2009-11-10T22:44:08.531Z</published>
<updated>2009-11-10T22:44:08.560Z</updated>
<app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-10T22:44:08.531Z</app:edited>
<category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webpage" label="webpage"/>
<title>New Webpage1</title>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<table cellspacing="0" class="sites-layout-name-one-column sites-layout-hbox">
<tbody>
<tr>
<td class="sites-layout-tile sites-tile-name-content-1">
<div>HTML body goes here</div>
</td>
</tr>
</tbody>
</table>
</div>
</content>
...
<batch:id>1</batch:id>
<batch:status code="201" reason="Created"/>
<batch:operation type="insert"/>
</entry>
<entry gd:etag=""YDkpeyI."">
<id>https://sites.google.com/feeds/content/site/siteName/ENTRY_ID2</id>
<updated>2009-11-10T22:44:09.296Z</updated>
<title>Updated Title for Webpage2</title>
...
<sites:pageName>updated-title-for-webpage2</sites:pageName>
<sites:revision>5</sites:revision>
<batch:status code="200" reason="Success"/>
<batch:operation type="update"/>
</entry>
<entry>
<id>https://sites.google.com/feeds/content/site/siteName/ENTRY_ID3</id>
<title>Deleted</title>
<content>Deleted</content>
<batch:status code="200" reason="Success"/>
<batch:operation type="delete"/>
</entry>
</feed>