প্রোটোকল গাইড

ক্লাসিক Google Sites API আপনার অ্যাপ্লিকেশনগুলিকে Google Site এর মধ্যে কন্টেন্ট অ্যাক্সেস, প্রকাশ এবং সংশোধন করার অনুমতি দেয়। এছাড়াও, আপনার অ্যাপ্লিকেশন সাম্প্রতিক কার্যকলাপের একটি তালিকা অনুরোধ করতে পারে, ইতিহাস সংশোধন করতে পারে এবং সংযুক্তি এবং ফাইল আপলোড/ডাউনলোড করতে পারে।

পাঠকবর্গ

এই ডকুমেন্টটি ধরে নিচ্ছে যে আপনি Google Data API প্রোটোকলের পিছনের সাধারণ ধারণাগুলি বুঝতে পেরেছেন।

এই ডকুমেন্টটি এমন প্রোগ্রামারদের জন্য তৈরি যারা গুগল সাইটের সাথে ইন্টারঅ্যাক্ট করতে পারে এমন ক্লায়েন্ট অ্যাপ্লিকেশন লিখতে চান। এটি raw XML/HTTP ব্যবহার করে মৌলিক ডেটা API ইন্টারঅ্যাকশনের উদাহরণের একটি সিরিজ প্রদান করে, ব্যাখ্যা সহ। এই ডকুমেন্টটি পড়ার পরে, আপনি বাম দিকের নেভবারে অন্যান্য গাইডগুলিতে পাওয়া ভাষা-নির্দিষ্ট উদাহরণগুলি পড়ে আমাদের ক্লায়েন্ট লাইব্রেরি ব্যবহার করে API এর সাথে ইন্টারঅ্যাক্ট করার বিষয়ে আরও জানতে পারবেন।

এই নির্দেশিকার উপাদানের রেফারেন্সের জন্য, রেফারেন্স নির্দেশিকাটি দেখুন।

অনুরোধ অনুমোদন করা হচ্ছে

যখন আপনার অ্যাপ্লিকেশনটি অ-সর্বজনীন ব্যবহারকারীর ডেটার অনুরোধ করে, তখন এতে অবশ্যই একটি অনুমোদন টোকেন অন্তর্ভুক্ত থাকতে হবে। টোকেনটি Google-এর কাছে আপনার অ্যাপ্লিকেশনটিকেও শনাক্ত করে।

অনুমোদন প্রোটোকল সম্পর্কে

অনুরোধ অনুমোদনের জন্য আপনার অ্যাপ্লিকেশনকে OAuth 2.0 ব্যবহার করতে হবে। অন্য কোনও অনুমোদন প্রোটোকল সমর্থিত নয়। যদি আপনার অ্যাপ্লিকেশনটি Sign In With Google ব্যবহার করে, তাহলে অনুমোদনের কিছু দিক আপনার জন্য পরিচালনা করা হবে।

OAuth 2.0 ব্যবহার করে অনুরোধ অনুমোদন করা

অ-সর্বজনীন ব্যবহারকারীর ডেটার জন্য Google Sites Data API-তে অনুরোধগুলি অবশ্যই একজন অনুমোদিত ব্যবহারকারী দ্বারা অনুমোদিত হতে হবে।

OAuth 2.0 এর জন্য অনুমোদন প্রক্রিয়া, অথবা "প্রবাহ" এর বিশদ বিবরণ আপনি কোন ধরণের অ্যাপ্লিকেশন লিখছেন তার উপর নির্ভর করে কিছুটা পরিবর্তিত হয়। নিম্নলিখিত সাধারণ প্রক্রিয়াটি সমস্ত ধরণের অ্যাপ্লিকেশনের ক্ষেত্রে প্রযোজ্য:

  1. যখন আপনি আপনার অ্যাপ্লিকেশন তৈরি করেন, তখন আপনি Google API Console ব্যবহার করে এটি নিবন্ধন করেন। এরপর Google আপনার পরে প্রয়োজনীয় তথ্য প্রদান করে, যেমন একটি ক্লায়েন্ট আইডি এবং একটি ক্লায়েন্ট সিক্রেট।
  2. গুগল এপিআই কনসোলে গুগল সাইটস ডেটা এপিআই সক্রিয় করুন। (যদি এপিআই কনসোলে তালিকাভুক্ত না থাকে, তাহলে এই ধাপটি এড়িয়ে যান।)
  3. যখন আপনার অ্যাপ্লিকেশনটি ব্যবহারকারীর ডেটা অ্যাক্সেসের প্রয়োজন হয়, তখন এটি গুগলের কাছে একটি নির্দিষ্ট অ্যাক্সেসের সুযোগের জন্য অনুরোধ করে।
  4. গুগল ব্যবহারকারীকে একটি সম্মতি স্ক্রিন প্রদর্শন করে, যাতে তাদের কিছু ডেটা অনুরোধ করার জন্য আপনার আবেদনটি অনুমোদন করতে বলা হয়।
  5. যদি ব্যবহারকারী অনুমোদন করেন, তাহলে গুগল আপনার অ্যাপ্লিকেশনটিকে একটি স্বল্পস্থায়ী অ্যাক্সেস টোকেন দেয়।
  6. আপনার অ্যাপ্লিকেশনটি ব্যবহারকারীর ডেটা অনুরোধ করে, অনুরোধের সাথে অ্যাক্সেস টোকেন সংযুক্ত করে।
  7. যদি Google নির্ধারণ করে যে আপনার অনুরোধ এবং টোকেনটি বৈধ, তাহলে এটি অনুরোধ করা ডেটা ফেরত দেয়।

কিছু প্রবাহে অতিরিক্ত পদক্ষেপ অন্তর্ভুক্ত থাকে, যেমন নতুন অ্যাক্সেস টোকেন অর্জনের জন্য রিফ্রেশ টোকেন ব্যবহার করা। বিভিন্ন ধরণের অ্যাপ্লিকেশনের প্রবাহ সম্পর্কে বিস্তারিত তথ্যের জন্য, Google এর OAuth 2.0 ডকুমেন্টেশন দেখুন।

গুগল সাইটস ডেটা এপিআই-এর জন্য 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 সাইটগুলির তালিকা তৈরি করতে এবং বিদ্যমান সাইটের শিরোনাম পরিবর্তন করতে ব্যবহার করা যেতে পারে। 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/&quot;CkUAQH4_eil7I2A9WxNaFk4.&quot;">
  <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/&quot;DkQGQHczfA9WxNaFk4.&quot;">
  <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 এর অধীনে 'slate' থিম সহ একটি নতুন 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/&quot;DEECR38l7I2A9WxNaF0Q.&quot;">
  <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 অনুরোধের Atom এন্ট্রিতে, একটি <link> অন্তর্ভুক্ত করুন যেখানে rel='source' কপি করার জন্য সাইটের সাইট ফিডের দিকে নির্দেশ করবে। যে কোনও সাইট কপি করা হয়েছে তার এই লিঙ্কটি থাকবে। এখানে একটি সাইট ডুপ্লিকেট করার একটি উদাহরণ দেওয়া হল:

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/&quot;DEECR38l7I2A9WxNaF0Q.&quot;">
  <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/&quot;DEECR38l7I2A9WxNaF0Q.&quot;">
  <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/&quot;DEECR38l7I2A9WxNaF0Q.&quot;">
  <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/&quot;DkQGQHczfA9WxNaFk4.&quot;">
  <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 s রয়েছে যা http://sites.google.com/site/ myOtherTestSite সাইটের দিকে নির্দেশ করে।

ওয়েব ঠিকানা ম্যাপিং পরিবর্তন করা হচ্ছে

দ্রষ্টব্য : ওয়েব অ্যাড্রেস ম্যাপিং নিয়ে কাজ করার সময় সমস্ত GET/POST/PUT অপারেশনে with-mappings=true প্যারামিটারটি নির্দিষ্ট করা উচিত। যদি প্যারামিটারটি অনুপস্থিত থাকে, তাহলে webAddressMapping s সাইট এন্ট্রিতে (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/&quot;DkQGQHczfA9WxNaFk4.&quot;">
  <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/&quot;CU4GQ3szfSl7ImA9WxNRFUg.&quot;">
<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/&quot;CU8DQn45fyl7ImA9WxNRFUg.&quot;">
  <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/&quot;CU8AR3s4cSl7ImA9WxNRFUg.&quot;">
  <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/&quot;CU4GQmA9WxNRFUg.&quot;">
  <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&amp;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/&quot;CU8DQ388eSl7ImA9WxNRFUg.&quot;">
  <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&amp;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/&quot;Ck8GQXk7fil7ImA9WxNSFk0.&quot;">
  <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/&quot;CkMBQH08fCl7ImA9WxNSFk0.&quot;">
  <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/&quot;AkYHQ3ozcCl7ImA9WxJaE08.&quot;">
  <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"/>

Atom-এর সাধারণ উপাদানগুলির ব্যাখ্যার জন্য, Google Data Protocol রেফারেন্স দেখুন। ক্লাসিক Sites API-এর একটি নির্দিষ্ট অর্থ বহনকারী উপাদানগুলি নীচে বর্ণনা করা হয়েছে। কিছু ধরণের এন্ট্রিতে অতিরিক্ত বৈশিষ্ট্য থাকবে (নীচে তালিকাভুক্ত নয়), অন্যগুলিতে থাকবে না। উদাহরণস্বরূপ, একটি listitem এন্ট্রিতে <gs:field> উপাদান থাকতে পারে, যখন একটি webpage এন্ট্রিতে থাকে না।

উপাদান বিবরণ
<content ...> ভেতরের লেখাটি হল পৃষ্ঠার HTML বডি। কিছু এন্ট্রির (যেমন সংযুক্তি) জন্য, এই উপাদানটিতে একটি src অ্যাট্রিবিউট থাকবে যা ফাইলের দিকে নির্দেশ করবে।
<link rel="alternate" ...> গুগল সাইটে পৃষ্ঠা বা আইটেমের লিঙ্ক।
<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 Data API কোয়েরি প্যারামিটার এবং ক্লাসিক Sites API-এর জন্য নির্দিষ্ট প্যারামিটার ব্যবহার করে কন্টেন্ট ফিড অনুসন্ধান করতে পারেন। আরও বিস্তারিত তথ্য এবং সমর্থিত প্যারামিটারগুলির সম্পূর্ণ তালিকার জন্য, রেফারেন্স গাইড দেখুন।

নির্দিষ্ট ধরণের এন্ট্রি পুনরুদ্ধার করা হচ্ছে

শুধুমাত্র একটি নির্দিষ্ট ধরণের এন্ট্রি আনতে, kind প্যারামিটারটি ব্যবহার করুন। এই উদাহরণটি কেবল webpage এন্ট্রিগুলি ফেরত দেয়:

GET /feeds/content/domainName/siteName?kind=webpage

একাধিক এন্ট্রি টাইপ ফেরত দিতে, প্রতিটি kind ',' দিয়ে আলাদা করুন। এই উদাহরণটি filecabinet এবং listpage এন্ট্রি ফেরত দেয়:

GET /feeds/content/domainName/siteName?kind=filecabinet,listpage

বিকল্পভাবে, আপনি kind প্যারামিটারের পরিবর্তে Google Data /-/category কোয়েরির জন্য স্ট্যান্ডার্ড ফর্ম্যাট ব্যবহার করতে পারেন:

GET /feeds/content/domainName/siteName/-/filecabinet|listpage

পৃষ্ঠার টেমপ্লেটগুলি পুনরুদ্ধার করা হচ্ছে

এই উদাহরণটি কেবল template পৃষ্ঠাগুলি ফেরত দেয়:

GET /feeds/content/domainName/siteName/-/template

সকল প্রকার এন্ট্রি ফেরত দিতে এবং template পৃষ্ঠা অন্তর্ভুক্ত করতে, ব্যবহার করুন:

GET /feeds/content/domainName/siteName/-/template|-template

পথ অনুসারে একটি পৃষ্ঠা পুনরুদ্ধার করা হচ্ছে

যদি আপনি গুগল সাইটের মধ্যে কোনও পৃষ্ঠার আপেক্ষিক পথ জানেন, তাহলে আপনি সেই নির্দিষ্ট পৃষ্ঠাটি আনতে 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 পাথের অধীনে আইটেম/পৃষ্ঠা তৈরি করা

ডিফল্টরূপে, পূর্ববর্তী উদাহরণটি http://sites.google.com/ domainName / siteName /new-webpage-title URL এর অধীনে তৈরি করা হবে এবং 'নতুন ওয়েবপেজ শিরোনাম' এর একটি পৃষ্ঠা শিরোনাম থাকবে। অর্থাৎ, URL এর জন্য <atom:title> কে new-webpage-title এ স্বাভাবিক করা হবে। একটি পৃষ্ঠার URL পাথ কাস্টমাইজ করতে, আপনি <sites:pageName> উপাদান সেট করতে পারেন।

এই উদাহরণটি 'ফাইল স্টোরেজ' শিরোনামের একটি পৃষ্ঠা শিরোনাম সহ একটি নতুন filecabinet তৈরি করে, তবে <sites:pageName> উপাদানটি নির্দিষ্ট করে http://sites.google.com/ domainName / siteName /files URL এর অধীনে পৃষ্ঠাটি তৈরি করে।

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 পাথের নামকরণের জন্য সার্ভার নিম্নলিখিত অগ্রাধিকার নিয়ম ব্যবহার করে:

  1. <sites:pageName> , যদি থাকে। অবশ্যই az, AZ, 0-9, -, _ পূরণ করতে হবে।
  2. <atom:title> , যদি pageName উপস্থিত না থাকে তাহলে অবশ্যই null হওয়া উচিত নয়। স্বাভাবিকীকরণ হল '-' এ হোয়াইটস্পেস ট্রিম + কোলাপস করা এবং az, AZ, 0-9, -, _ সাথে মেলে না এমন অক্ষরগুলি সরিয়ে ফেলা।

উদাহরণস্বরূপ, 'Custom_Page2' সার্ভার দ্বারা গৃহীত হবে।

উপপৃষ্ঠা তৈরি করা হচ্ছে

একটি প্যারেন্ট পেজের অধীনে সাবপেজ (শিশু) তৈরি করতে, আপনার নতুন অ্যাটম এন্ট্রিতে একটি <link rel="http://schemas.google.com/sites/2008#parent"> অন্তর্ভুক্ত করুন। লিঙ্কের href অ্যাট্রিবিউটটিকে প্যারেন্ট এন্ট্রির সেলফ লিঙ্কে সেট করুন।

এই উদাহরণটি 'ঘোষণা' শিরোনাম সহ একটি নতুন announcement তৈরি করে, একটি প্যারেন্ট ঘোষণা পৃষ্ঠার অধীনে PARENT_ENTRY_ID এন্ট্রি আইডি সহ। পৃষ্ঠার মূল অংশের জন্য 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>

পৃষ্ঠা টেমপ্লেট

পৃষ্ঠা টেমপ্লেট তৈরি করা হচ্ছে

একটি পৃষ্ঠা টেমপ্লেট তৈরির প্রক্রিয়া নতুন আইটেম/পৃষ্ঠা তৈরি এবং উপ-পৃষ্ঠা তৈরি করার মতোই। পার্থক্য হল category যোগ করার সময় শব্দ এবং লেবেল যথাক্রমে 'http://schemas.google.com/g/2005#template' এবং 'template' এ সেট করা হয়।

এই উদাহরণটি একটি নতুন 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> উপাদান অন্তর্ভুক্ত করেন, সার্ভার এটি প্রত্যাখ্যান করবে।

ফাইল আপলোড করা হচ্ছে

ঠিক যেমন গুগল সাইটের ক্ষেত্রে, API আপনাকে ফাইল ক্যাবিনেট পৃষ্ঠা এবং প্যারেন্ট পৃষ্ঠাগুলিতে সংযুক্তি আপলোড করার অনুমতি দেয়।

অভিভাবকের কাছে একটি অ্যাটাচমেন্ট আপলোড করতে, কন্টেন্ট ফিড URL-এ একটি HTTP POST অনুরোধ পাঠান:

https://sites.google.com/feeds/content/domainName/siteName

POST বডিটি একটি MIME মাল্টিপার্ট রিকোয়েস্ট হওয়া উচিত, যাতে ফাইলের বিষয়বস্তু <atom:entry> এর সাথে সংযুক্তির মেটাডেটা যুক্ত থাকে। <atom:entry> এর মূল এন্ট্রির স্ব-লিঙ্ক উল্লেখ করা উচিত, যাতে সংযুক্তিটি কোথায় তৈরি করা হবে তা নির্দিষ্ট করা যায়। আরও তথ্যের জন্য সাবপেজ তৈরি করা দেখুন।

সংযুক্তি আপলোড করা হচ্ছে

PARENT_ENTRY_ID আইডি সহ একটি ফাইল ক্যাবিনেটে একটি PDF ফাইল আপলোড করার একটি উদাহরণ এখানে দেওয়া হল। সংযুক্তিটি 'PDF ফাইল' শিরোনাম এবং একটি (ঐচ্ছিক) বিবরণ, 'HR প্যাকেট' দিয়ে তৈরি করা হবে।

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 এর বিদ্যমান ফোল্ডারে একটি সংযুক্তি আপলোড করতে, ফোল্ডারের নামের সাথে 'term' বৈশিষ্ট্য সেট করে একটি বিভাগ অন্তর্ভুক্ত করুন:

<category scheme="http://schemas.google.com/sites/2008#folder" term="FolderName">

ওয়েব সংযুক্তি

ওয়েব অ্যাটাচমেন্ট হল বিশেষ ধরণের অ্যাটাচমেন্ট। মূলত, এগুলি ওয়েবে থাকা অন্যান্য ফাইলের লিঙ্ক যা আপনি আপনার ফাইল ক্যাবিনেট তালিকায় যোগ করতে পারেন। এই বৈশিষ্ট্যটি Google Sites UI-তে 'URL দ্বারা ফাইল যোগ করুন' আপলোড পদ্ধতির অনুরূপ।

দ্রষ্টব্য : ওয়েব সংযুক্তিগুলি কেবল একটি ফাইল ক্যাবিনেটের নীচে তৈরি করা যেতে পারে। এগুলি অন্য ধরণের পৃষ্ঠায় আপলোড করা যাবে না।

এই উদাহরণটি FILECABINET_ENTRY_ID আইডি দ্বারা উল্লেখিত ফাইল ক্যাবিনেটের অধীনে একটি webattachment তৈরি করে। এর শিরোনাম এবং (ঐচ্ছিক) বিবরণ যথাক্রমে 'GoogleLogo' এবং 'চমৎকার রঙ' এ সেট করা আছে।

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 অনুরোধের মাধ্যমে সম্পাদনা করা যেতে পারে। অনুরোধের মূল অংশে আপডেট করা পৃষ্ঠার বর্ণনা দিয়ে একটি Atom এন্ট্রি থাকা উচিত। এই নিয়মের ব্যতিক্রম হল একটি সংযুক্তি এন্ট্রি, যেখানে এন্ট্রিটি কেবল সংযুক্তির মেটাডেটা আপডেট করার জন্য ব্যবহার করা যেতে পারে। সংযুক্ত ফাইলের বিষয়বস্তু পরিবর্তন করতে, সংযুক্তির সম্পাদনা 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 দ্বারা প্রতিনিধিত্ব করা হয়) আপডেট করার একটি উদাহরণ নিচে দেওয়া হল:

  • শিরোনামটি 'আপডেট করা কন্টেন্ট'-এ পরিবর্তিত হয়েছে।
  • আপডেট করা HTML কন্টেন্ট
  • তালিকার প্রথম কলামের শিরোনাম 'মালিক' তে আপডেট করা হয়েছে।
  • পৃষ্ঠার 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/&quot;CEEBRn0ymA9WxJWEUw.&quot;">
  <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="Description"/>
    <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

উপরে ফিরে যান



কন্টেন্ট মুছে ফেলা হচ্ছে

গুগল সাইট থেকে কোনও আইটেম সরাতে, প্রথমে এন্ট্রিটি পুনরুদ্ধার করুন, তারপর এন্ট্রির edit URL-এ একটি DELETE অনুরোধ পাঠান। এটি একই URL যা কোনও আইটেমের মেটাডেটা বা html কন্টেন্ট আপডেট করার সময় ব্যবহৃত হয়।

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"।
  • গ্রুপ — একটি গুগল গ্রুপ ই-মেইল ঠিকানা, যেমন "group@domain.com"।
  • ডোমেইন — একটি G Suite ডোমেইন নাম, যেমন "domain.com"।
  • invite — এমন একজন ব্যবহারকারী যাকে সাইটে আমন্ত্রণ জানানো হয়েছে, কিন্তু এখনও সাইটের ACL-তে যোগ করা হয়নি। (gdata 1.3 বা তার নিচে উল্লেখ করা থাকলে এটি উপলব্ধ নয়।)
  • ডিফল্ট — "default" ধরণের শুধুমাত্র একটি সম্ভাব্য স্কোপ আছে, যার কোনও মান নেই (যেমন <gAcl:scope type="default"> )। এই নির্দিষ্ট স্কোপটি কোনও পাবলিক সাইটে ডিফল্টরূপে যেকোনো ব্যবহারকারীর অ্যাক্সেস নিয়ন্ত্রণ করে।

দ্রষ্টব্য : ডোমেনগুলিতে "মালিক" অ্যাক্সেসে gAcl:role মান সেট করা যাবে না, তারা কেবল পাঠক বা লেখক হতে পারবে।

"আমন্ত্রণ" সুযোগ সম্পর্কে।

যখন আপনি ACL-তে এক বা একাধিক ব্যবহারকারী যোগ করেন যাদের ইতিমধ্যেই Google অ্যাকাউন্ট নেই, তখন API আমন্ত্রণ সুযোগ ফেরত দেয়। API একটি এমবেডেড টোকেন সহ একটি URL ফেরত দেয় যা আপনাকে আপনার আমন্ত্রিত ব্যবহারকারীদের আমন্ত্রণ গ্রহণ করার অনুমতি দেওয়ার জন্য প্রদান করতে হবে।

এই আমন্ত্রণ পদ্ধতি আপনাকে Google-এর বাইরের ব্যবহারকারীদের আমন্ত্রণ জানাতে সাহায্য করে, তারা কোন ইমেল ঠিকানা ব্যবহার করতে চান তা পূর্ব জ্ঞান ছাড়াই। ব্যবহারকারীরা এমবেডেড টোকেন সহ আমন্ত্রণ URL-এ ক্লিক করলে, তারা যে কোনও ইমেল ঠিকানা ব্যবহার করে অ্যাক্সেসের জন্য সাইন আপ করতে পারবেন। উপরন্তু, একাধিক ব্যবহারকারী আমন্ত্রণ গ্রহণ করার জন্য এই URL ব্যবহার করতে পারেন, তাই একজন ব্যবহারকারী বা ব্যবহারকারীদের একটি গোষ্ঠীকে আমন্ত্রণ জানানোর সময় এটি কার্যকর হতে পারে।

দ্রষ্টব্য: "invite" স্কোপটি শুধুমাত্র 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>

শেয়ার করার অনুমতিগুলি সরানো হচ্ছে

এই ব্যবহারকারীর অনুমতি অপসারণ করতে, PUT অনুরোধের জন্য ব্যবহৃত একই edit লিঙ্কে একটি DELETE অনুরোধ জারি করুন:

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 স্ট্যাটাস কোড ফেরত পাঠায়। এই দুটি স্ট্যাটাস কোডই নির্দেশ করে যে আপনি ইতিমধ্যেই যে আইটেমটি পুনরুদ্ধার করেছেন তা আপ-টু-ডেট।

যদি ETag গুলি মিল না করে, তাহলে শেষবার অনুরোধ করার পর থেকে আইটেমটি পরিবর্তন করা হয়েছে এবং সার্ভার আইটেমটি ফেরত দেবে।

ETags সম্পর্কে আরও তথ্যের জন্য, Google Data APIs রেফারেন্স গাইড দেখুন।

ব্যাচ প্রসেসিং

ব্যাচ রিকোয়েস্ট আপনার ক্লায়েন্টকে প্রতিটি অপারেশন আলাদাভাবে জমা দেওয়ার পরিবর্তে একটি অনুরোধে একাধিক অপারেশন সম্পাদন করার ক্ষমতা দেয়।

সার্ভারটি যতটা সম্ভব অনুরোধকৃত পরিবর্তনগুলি সম্পাদন করবে এবং প্রতিটি ক্রিয়াকলাপের সাফল্য বা ব্যর্থতা মূল্যায়ন করার জন্য আপনি যে স্থিতি তথ্য ব্যবহার করতে পারেন তা ফেরত দেবে। Google Data API-তে ব্যাচ প্রক্রিয়াকরণ সম্পর্কে আরও তথ্যের জন্য, Google Data API-এর সাথে ব্যাচ প্রক্রিয়াকরণ দেখুন।

ব্যাচ ফিডের প্রতিটি অপারেশনে একটি <id> এলিমেন্ট থাকে, ইনসার্ট অপারেশন ছাড়া। এই এলিমেন্টটি কন্টেন্ট ফিড আপডেট, ডিলিট বা কোয়েরি করার সময় আপনি সাধারণত যে রিকোয়েস্ট URL ব্যবহার করেন তার মতোই। উদাহরণস্বরূপ, যদি আপনি একটি এডিট আপডেট করেন, তাহলে <id> কে প্রশ্নবিদ্ধ এন্ট্রির edit লিঙ্কে সেট করুন। এটি টার্গেট এন্ট্রি সনাক্ত করতে ব্যবহৃত হয়। নতুন এন্ট্রিগুলিতে <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="&quot;YDgpeyI.&quot;">
    <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="&quot;YassseyI.&quot;">
    <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="&quot;YDgpsdfeyI.&quot;">
  <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="&quot;YDsseyI.&quot;">
  <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="&quot;YDkpeyI.&quot;">
  <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>

উপরে ফিরে যান