# Google Sites > Google Sites is Google's website builder inside Google Workspace. Its only public > programmatic surface is the Google Sites Data API, a Google Data (GData) v1.4 > Atom/XML API. **The API is deprecated and reaches ONLY classic Google Sites.** It > cannot read or write the rebuilt Google Sites launched 2016-11-22 — which is the only > version a user can create today. Google publishes no replacement API for new Sites. Generated by the API Evangelist enrichment pipeline on 2026-09-12 from the provider's own documentation. Google does not publish an llms.txt; this file is generated, not harvested. ## What an agent should know first - **Status: deprecated.** Google's own banner: "Sites API is deprecated and might stop working at any time. Sites API can only access classic Sites." - **No OpenAPI.** No OpenAPI, Swagger, GraphQL SDL, AsyncAPI or Google discovery document exists. The API is absent from Google's discovery directory (530 services, none is `sites`). The contract is prose plus XML examples. - **No MCP server.** Nobody ships one — not Google, not a third party. - **No webhooks and no events.** The Activity feed is polled, not pushed. - **No published rate limits.** No quota numbers, no RateLimit headers, no Retry-After. - **No idempotency keys.** A retried POST creates a duplicate. ETag `If-Match` protects updates and deletes only. - **No undelete.** Deleted content stays visible with `include-deleted=true` and in the revision feed, but no API operation restores it and no retention window is published. ## Base and versioning - Base: `https://sites.google.com/feeds/` - Required header: `GData-Version: 1.4` (or `v=1.4` as a query parameter) - Media type: `application/atom+xml` ## Authentication - OAuth 2.0 authorization code, PKCE supported. No other protocol is accepted. - Single coarse scope: `https://sites.google.com/feeds/` — read **and** write across all five feeds, including delete and ACL changes. - Authorization server: `https://accounts.google.com` - OAuth 1.0, AuthSub and ClientLogin were removed 2012-04-20. ## The five feeds - **Site feed** — `GET|POST|PUT /feeds/site/{domain}/[{site}]`. List, create, copy and rename sites. Create and copy are Google Workspace domains only. No DELETE. - **Content feed** — `GET|POST|PUT|DELETE /feeds/content/{domain}/{site}/[{entryId}]`. Pages, announcements, file cabinets, list pages, list items, comments, attachments, web attachments, templates. The one feed that may be readable anonymously, depending on the site's published settings. - **Revision feed** — `GET /feeds/revision/{domain}/{site}/{entryId}/[{revisionId}]`. - **Activity feed** — `GET /feeds/activity/{domain}/{site}/[{activityId}]`. - **ACL feed** — `GET|POST|PUT|DELETE /feeds/acl/site/{domain}/{site}/[{aclEntryId}]`. ## Query conventions Paging: `start-index`, `max-results`, plus `openSearch:startIndex` and a `rel="next"` link. Filtering: `q`, `updated-min`, `updated-max`, `published-min`, `published-max`, `kind`, `parent`, `ancestor`, `path`, `include-deleted`, `include-draft`, `include-all-sites`, `with-mappings`. ## Concurrency and batching Every feed and entry carries `gd:etag`. Writes take `If-Match` (`If-Match: *` to force). Conditional reads use `If-None-Match` and answer 304 or 412. Batch requests POST a batch feed to the feed's batch link with `query`/`insert`/`update`/`delete` operations; the batch is **not atomic** and per-operation status must be read from the response feed. ## Documentation - Overview: https://developers.google.com/workspace/sites - Developer guide: https://developers.google.com/workspace/sites/docs/developers_guide - Protocol guide (HTTP/XML): https://developers.google.com/workspace/sites/docs/1.0/developers_guide_protocol - Reference guide: https://developers.google.com/workspace/sites/docs/1.0/reference - Python guide: https://developers.google.com/workspace/sites/docs/1.0/developers_guide_python - Java guide: https://developers.google.com/workspace/sites/docs/1.0/developers_guide_java - Support: https://developers.google.com/workspace/sites/support - Status: https://www.google.com/appsstatus/dashboard/ - Pricing (Google Workspace): https://workspace.google.com/pricing ## Client libraries Both are the generic Google Data client libraries, both archived, both far older than the docs that reference them: - Python — `pip install gdata` — PyPI `gdata` 2.0.18, published 2013-06-14. Python 2 only. Repo https://github.com/google/gdata-python-client (archived). - Java — `com.google.gdata:core` 1.47.1, published to Maven Central 2012-10-26. Repo https://github.com/google/gdata-java-client (archived). There is no JavaScript, Go, Ruby, PHP, .NET or Rust client. ## Artifacts in this repository - apis.yml — the API Evangelist index for Google Sites - authentication/google-sites-authentication.yml — OAuth 2.0 profile - scopes/google-sites-scopes.yml — the single OAuth scope - conventions/google-sites-conventions.yml — pagination, ETags, batch, idempotency, reversibility - data-model/google-sites-data-model.yml — the five feeds as an entity graph - errors/google-sites-problem-types.yml — the documented HTTP statuses (and the gaps) - lifecycle/google-sites-lifecycle.yml — the deprecation, versioning and status page - conformance/google-sites-conformance.yml — Atom, AtomPub, OAuth 2.0, OpenSearch, GData - packages/google-sites-packages.yml — the two archived first-party clients - plans/google-sites-plans-pricing.yml — Google Workspace tiers - rate-limits/google-sites-rate-limits.yml — an honest zero - changelog/google-sites-changelog.yml — the shared Workspace release notes - mcp/google-sites-mcp.yml — candidate tools; no server exists - well-known/google-sites-well-known.yml — the /.well-known/ probe across eight hosts - security/ — domain security probe and vulnerability disclosure program