appwrite-swift

Implements Appwrite backend operations in Swift for Apple platforms and server-side applications.

1|1|Updated Jul 31, 2026
One-click install
npx skills add https://github.com/appwrite/agent --skill appwrite-swift-appwrite
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: appwrite-swift
Source: https://github.com/appwrite/agent/tree/main/.agents/skills/appwrite-swift
Command: npx skills add https://github.com/appwrite/agent --skill appwrite-swift-appwrite

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Building apps with Appwrite's Swift SDK requires knowing the correct APIs for auth, databases, storage, realtime, and permissions across both client-side Apple platforms and server-side Swift, and mistakes like using deprecated classes or missing permissions cause broken or insecure code. ## Core Features & Use Cases - Client & Server Setup: Configure Appwrite clients for iOS/macOS apps with sessions or server-side Swift with API keys, including SSR auth flows for Vapor. - Full Backend Coverage: Authentication (email, OAuth), TablesDB queries with typed string columns, file storage, teams, realtime subscriptions, and serverless functions. - Permissions & Error Handling: Correct use of Permission/Role helpers and AppwriteException handling with common error codes. - Use Case: You are building an iOS app that needs user signup, a synced todo table, and photo uploads. Use this Skill to generate correct async/await Swift code with proper queries, permissions, and realtime subscriptions. ## Quick Start Use the appwrite-swift skill to write Swift code that signs up a user, creates a row in a table, and subscribes to realtime updates for my iOS app.

Frequently Asked Questions about appwrite-swift

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I authenticate users with the Appwrite Swift SDK?▼

Use the Account service with async/await: call create for signup, createEmailPasswordSession for login, or createOAuth2Session for providers like Google. On the server, use an API-key client and create sessions via createSession for SSR flows.

How do I query database rows in Appwrite with Swift?▼

Use TablesDB (not the deprecated Databases class) with listRows and Query helpers like equal, greaterThan, orderDesc, limit, and cursorAfter. Prefer named parameters such as databaseId and tableId for all method calls.

Does the Appwrite Swift SDK support server-side Swift like Vapor?▼

Yes. Server-side Swift uses the same SDK with an API key via setKey. For SSR auth, maintain an admin client for creating sessions and a per-request session client configured with setSession from the a_session_<PROJECT_ID> cookie.

Why can't users access rows or files I created in Appwrite?▼

Appwrite grants no access by default; you must set permissions explicitly using Permission and Role helpers, such as Permission.read(Role.user(id)). Avoid Role.any() with write, update, or delete, which exposes resources to unauthenticated guests.

How do I subscribe to realtime updates in a Swift app?▼

Use the Realtime service and subscribe to channels like tablesdb.[DB_ID].tables.[TABLE_ID].rows or buckets.[BUCKET_ID].files. The callback receives events, payload, channels, and timestamp; call close() on the subscription to clean up.