Skip to content

Projects API#2926

Merged
atharvadeosthale merged 35 commits into
mainfrom
projects-api
Jul 22, 2026
Merged

Projects API#2926
atharvadeosthale merged 35 commits into
mainfrom
projects-api

Conversation

@atharvadeosthale

Copy link
Copy Markdown
Member

No description provided.

@greptile-apps

greptile-apps Bot commented Apr 28, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR adds the Projects API documentation and announcement content. The main changes are:

  • New Projects API blog post and changelog entry.
  • New Partner Project docs section, pages, sidebar entries, and redirects.
  • Project screenshot and blog cover assets with optimizer cache entries.
  • curl and hurl code-fence labels and highlighting mappings.

Confidence Score: 5/5

This looks safe to merge.

  • No blocking issues found in the changed code.

Important Files Changed

Filename Overview
.optimize-cache.json Adds optimizer cache entries for the Projects API blog cover and project documentation screenshots.
src/routes/blog/post/announcing-projects-api/+page.markdoc Adds the Projects API announcement blog post.
src/routes/changelog/(entries)/2026-07-22-projects-api.markdoc Adds the Projects API changelog entry.
src/routes/docs/partners/project/+layout.svelte Adds the sidebar structure for the Partner Project docs section.
src/redirects.json Redirects old API key and environment-variable docs URLs to the new Project docs pages.
src/lib/utils/code.ts Adds syntax-highlighting mappings for curl and hurl code fences.
src/lib/utils/references.ts Adds display labels for curl and hurl code fences.

Reviews (28): Last reviewed commit: "Merge remote-tracking branch 'origin/mai..." | Re-trigger Greptile

Comment thread src/routes/blog/post/announcing-auth-methods-api/+page.markdoc Outdated
Comment thread src/routes/blog/post/announcing-auth-methods-api/+page.markdoc
# Conflicts:
#	.optimize-cache.json
#	src/routes/docs/products/project/api-keys/+page.markdoc
#	static/images/docs/project/create-api-key.png
#	static/images/docs/project/dark/create-api-key.png
- Rename stale enum classes to Project-prefixed names across all SDK
  language blocks: Scopes->ProjectKeyScopes (api-keys),
  AuthMethod->ProjectAuthMethodId (auth-methods),
  ProtocolId->ProjectProtocolId (protocols),
  ServiceId->ProjectServiceId (services); fix Python enum import path
- Replace mock-phones Errors table with a Benefits section to match
  sibling project pages
…ist/get policy)

- api-keys: add Create an ephemeral key section (createEphemeralKey),
  using tables.read/tables.write scopes
- platforms: add Get a platform section (getPlatform)
- policies: add List policies and Get a policy sections
  (listPolicies, getPolicy)

All code blocks verified against a local Cloud with the published
node-appwrite and appwrite (Rust) SDKs.
- New page documenting the project OAuth2 endpoints: per-provider
  updateOAuth2<Provider>, listOAuth2Providers, getOAuth2Provider
- Console section with light/dark screenshots
- Provider table mapping all 42 providers to their method and
  credential field names (App ID / App secret / extra fields)
- Documents that enabling a provider validates credentials
  end-to-end and throws on invalid creds
- Sidebar entry after Auth methods

Node, Rust, and CLI examples verified against a local Cloud.
- Move /docs/advanced/platform/environment-variables to
  /docs/products/project/environment-variables
- Add redirect from the old path to the new one
- Update platform and project sidebars
- Relocate /docs/products/project/* to /docs/platforms/project/*
- Add a Platforms category in the docs sidebar below Products and
  move Project into it
- Update section sidebar hrefs and overview cards to the new path
- Repoint existing redirects that targeted /docs/products/project/*
  to /docs/platforms/project/*
Unreferenced screenshot accidentally committed to the repo root;
the mock phones page uses static/images/docs/project/dark/mock-phones.avif.
Document listing, getting, and updating custom email templates via the
Console, Server SDKs (all languages), and CLI. Node and Rust blocks plus
all three CLI commands verified against a local Cloud. Includes a template
types reference, locales note, and benefits section, with light and dark
Console screenshots.
Document configuring a custom SMTP server and sending a test email via
the Console, Server SDKs (all languages), and CLI. Node, Rust, and the CLI
commands verified against a local Cloud with real delivery to MailDev.

Also add required-scope info boxes to the SMTP, email templates, and
environment variables pages to match the other project pages, and add
overview cards for OAuth providers, environment variables, SMTP, and
email templates.
Add a Labels page documenting updateLabels via the Console, Server SDKs,
and CLI, with a note on reading labels through project.get. Node, Rust,
and the CLI command verified against a local Cloud.

Also document project.get in a "Retrieve your project" section on the
project overview, and add the Labels card and sidebar entry.
…section

auth-methods: the SDK method is updateAuthMethod, not updateProjectAuthMethodId
(corrected across node, deno, php, dotnet, dart, kotlin, java, go); and the Node
enum member is ProjectAuthMethodId.Emailpassword, not EmailPassword (Node/Deno).

oauth: the Node method is updateOAuth2GitHub, not updateOAuth2Github.

Verified against the published node-appwrite and rust SDKs and run against a
local Cloud. Non-Node languages were already correct.
Add a "Delete a project" section with a prominent destructive warning,
covering all Server SDKs and the CLI. Verified that delete returns 204
and removes the project in Node, Rust, and the CLI against a local Cloud.
Announce the Projects API with all-language examples (createWebPlatform
and updateProtocol), verified in Node and Rust. Cover path is referenced
but intentionally left empty for now.
Add five journey pages under platforms/project: provisioning, key rotation, branded emails, plan tiers, and offboarding. Add a Journeys group to the project sidebar, and a 'Built for platform teams' section plus Journeys cards to the project overview. Update the policies page required scope to the current project.policies.write.
Comment thread src/routes/blog/post/announcing-projects-api/+page.markdoc
adityaoberai and others added 4 commits June 23, 2026 05:11
… page

Documents updatePasswordStrengthPolicy and the deny-aliased/disposable/free-email policies with examples across all server SDKs and the CLI.

Claude-Session: https://claude.ai/code/session_011RByzUgcgGo8F6mFouRG3g
Rename docs/platforms/project to docs/partners/project, update the inbound docs/blog links, rename the sidebar group from Platforms to Partners, and repoint the five redirect targets (api-keys, environment-variables) to the new path. The old advanced/platform redirect block is unchanged.

Claude-Session: https://claude.ai/code/session_011RByzUgcgGo8F6mFouRG3g
atharvadeosthale and others added 3 commits July 1, 2026 19:07
Remove the plan-tiers and offboarding guides, rename the Journeys nav group to Guides, and clean up the cross-links that pointed at the removed pages. Add the Projects API cover image to the blog, create a matching changelog entry, and set both to 2026-07-01.

Claude-Session: https://claude.ai/code/session_011RByzUgcgGo8F6mFouRG3g
@adityaoberai

Copy link
Copy Markdown
Contributor

@atharvadeosthale let's just check the Greptile comments

Have we verified all the code samples? If not, let's do that.

Comment thread .optimize-cache.json

@adityaoberai adityaoberai left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approving to unblock @atharvadeosthale

Please ensure all comments are resolved

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to mark anything as new?

Comment thread src/routes/blog/post/announcing-projects-api/+page.markdoc

This is part of a wider effort to make everything in Appwrite accessible through the API. Our goal is to ensure that any action you can perform in the Appwrite Console can also be done programmatically, giving you full control over your projects through code.

# Why this matters

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's widen the scope of this, explicitly mention the "Partners" perspective


Every setting maps to a method on the `Project` service, available across all Server SDKs with the matching object or named parameters.

# Full SDK support

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's combine this and the get started sections

2. Initialize a Server SDK with your API key.
3. Use the `Project` service to configure your project from code.

# Resources

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need all these links? Can we not just use the Projects API docs here and link Discord or something else instead?

@atharvadeosthale

Copy link
Copy Markdown
Member Author

@atharvadeosthale let's just check the Greptile comments

Have we verified all the code samples? If not, let's do that.

Code blocks have been verified

…ons, trimmed resources

- Replace blog cover with new artwork
- Add Partner workflows bullet to Why this matters
- Merge Full SDK support into Get started, trim Resources to docs + Discord
- Move blog and changelog dates to 2026-07-21
- Restore platform create-api-key screenshots still referenced on main
- Add missing optimize-cache entries for project create-api-key images

Claude-Session: https://claude.ai/code/session_01SP9ik1aGqQ2BtzY9b8bRRX
@atharvadeosthale
atharvadeosthale merged commit f47d842 into main Jul 22, 2026
7 checks passed
@atharvadeosthale
atharvadeosthale deleted the projects-api branch July 22, 2026 06:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants