# Appwrite - Workflow node | Docs - nodulz

Source: https://nodulz.com/docs/nodes/appwrite

Language: en

Read and write Appwrite rows or documents and execute functions.

## Usage and specifics

Choose the Appwrite project, TablesDB or Databases API and resource identifiers. Key permissions restrict reads, writes and functions. For triggers, publish and configure the Appwrite webhook and events; a test payload does not verify delivery.

Technical type : `appwrite`. Runtime : `nodulz`.

## Credentials and prerequisites

- [Appwrite - API](/docs/credentials) (`integration` / `appwrite`). API endpoint, project and server key for Appwrite Cloud or self-hosted.

Create credentials in your nodulz instance’s Credentials area, then select them on the node. Availability depends on ownership and sharing. See the [credentials guide](/docs/credentials) for access and rotation.

## Parameters

Names below are technical keys. Defaults are not a ready-to-run configuration: complete fields required by your operation. Paths containing [] describe list items; some fields depend on the selected mode.

| Parameter | Type | Default | Values / limits |
| --- | --- | --- | --- |
| `credentialId` | `string` | `""` | - |
| `operation` | `enum` | `"list"` | `list`, `get`, `create`, `update`, `upsert`, `delete`, `executeFunction` |
| `api` | `enum` | `"tablesdb"` | `tablesdb`, `databases` |
| `databaseId` | `string` | `""` | - |
| `tableId` | `string` | `""` | - |
| `rowId` | `string` | `""` | - |
| `filters` | `string` | `"{}"` | - |
| `data` | `string` | `"{}"` | - |
| `limit` | `number` | `25` | -; ≥ 1, ≤ 100 |
| `cursor` | `string` | `""` | - |
| `functionId` | `string` | `""` | - |

## Configuration help

| Setting | Purpose and guidance |
| --- | --- |
| `operation`<br>Operation | Updates and deletes always target a single ID. Functions receive JSON data and return an Execution object. |
| `api`<br>Database API | TablesDB uses tables and rows. Databases uses collections and documents from the legacy API. |
| `limit`<br>Results per page | From 1 to 100 results, default 25. The response preserves total and rows or documents. |

## Initial configuration

Initial catalog configuration example, to adapt before running. Keep secrets in credentials.

```json
{
  "credentialId": "",
  "operation": "list",
  "api": "tablesdb",
  "databaseId": "",
  "tableId": "",
  "rowId": "",
  "filters": "{}",
  "data": "{}",
  "limit": 25,
  "cursor": "",
  "functionId": ""
}
```

## Verification

Test with representative data. Check node output in the inspector and logs, then use editor mapping for downstream fields. A trigger test with a simulated payload does not validate external service delivery.

See also : [Expressions and data](/docs/expressions), [Executions](/docs/executions), [Node catalog](/docs/nodes).

## Explore further

- [Features - nodulz](https://nodulz.com/product/overview)
- [Node catalog - nodulz](https://nodulz.com/product/catalog)
- [MCP server - nodulz](https://nodulz.com/product/mcp)
- [Pricing - nodulz](https://nodulz.com/pricing)
- [Use cases and workflow automation - nodulz](https://nodulz.com/use-cases)
- [Choose what your workflows can do. - nodulz](https://nodulz.com/compare)
- [Documentation - nodulz](https://nodulz.com/docs)
