175 lines
3.0 KiB
Markdown
175 lines
3.0 KiB
Markdown
# Tally Routing Reference
|
|
|
|
**App name:** `tally`
|
|
**Base URL proxied:** `api.tally.so`
|
|
|
|
## API Path Pattern
|
|
|
|
```
|
|
/tally/{resource}
|
|
```
|
|
|
|
Tally's API does not use version prefixes in paths.
|
|
|
|
## Required Headers
|
|
|
|
THe `User-Agent` header is required to avoid Cloudflare blocks:
|
|
|
|
```
|
|
User-Agent: Maton/1.0
|
|
```
|
|
|
|
## Common Endpoints
|
|
|
|
### Get Current User
|
|
```bash
|
|
GET /tally/users/me
|
|
```
|
|
|
|
### List Forms
|
|
```bash
|
|
GET /tally/forms
|
|
```
|
|
|
|
**Query Parameters:**
|
|
- `page` - Page number (default: 1)
|
|
- `limit` - Items per page (default: 50)
|
|
|
|
### Get Form
|
|
```bash
|
|
GET /tally/forms/{formId}
|
|
```
|
|
|
|
### Create Form
|
|
```bash
|
|
POST /tally/forms
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"status": "DRAFT",
|
|
"blocks": [
|
|
{
|
|
"type": "FORM_TITLE",
|
|
"uuid": "11111111-1111-1111-1111-111111111111",
|
|
"groupUuid": "22222222-2222-2222-2222-222222222222",
|
|
"groupType": "FORM_TITLE",
|
|
"title": "My Form",
|
|
"payload": {}
|
|
},
|
|
{
|
|
"type": "INPUT_TEXT",
|
|
"uuid": "33333333-3333-3333-3333-333333333333",
|
|
"groupUuid": "44444444-4444-4444-4444-444444444444",
|
|
"groupType": "INPUT_TEXT",
|
|
"title": "Your name",
|
|
"payload": {}
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
### Update Form
|
|
```bash
|
|
PATCH /tally/forms/{formId}
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"name": "Updated Form Name",
|
|
"status": "PUBLISHED"
|
|
}
|
|
```
|
|
|
|
### Delete Form
|
|
```bash
|
|
DELETE /tally/forms/{formId}
|
|
```
|
|
|
|
### List Form Questions
|
|
```bash
|
|
GET /tally/forms/{formId}/questions
|
|
```
|
|
|
|
### List Form Submissions
|
|
```bash
|
|
GET /tally/forms/{formId}/submissions
|
|
```
|
|
|
|
**Query Parameters:**
|
|
- `page` - Page number
|
|
- `limit` - Items per page
|
|
- `startDate` - Filter by start date (ISO 8601)
|
|
- `endDate` - Filter by end date (ISO 8601)
|
|
- `afterId` - Cursor for pagination
|
|
|
|
### Get Submission
|
|
```bash
|
|
GET /tally/forms/{formId}/submissions/{submissionId}
|
|
```
|
|
|
|
### Delete Submission
|
|
```bash
|
|
DELETE /tally/forms/{formId}/submissions/{submissionId}
|
|
```
|
|
|
|
### List Workspaces
|
|
```bash
|
|
GET /tally/workspaces
|
|
```
|
|
|
|
### Get Workspace
|
|
```bash
|
|
GET /tally/workspaces/{workspaceId}
|
|
```
|
|
|
|
### Create Workspace
|
|
```bash
|
|
POST /tally/workspaces
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"name": "New Workspace"
|
|
}
|
|
```
|
|
|
|
### List Organization Users
|
|
```bash
|
|
GET /tally/organizations/{organizationId}/users
|
|
```
|
|
|
|
### List Organization Invites
|
|
```bash
|
|
GET /tally/organizations/{organizationId}/invites
|
|
```
|
|
|
|
### List Webhooks
|
|
```bash
|
|
GET /tally/webhooks
|
|
```
|
|
|
|
### Create Webhook
|
|
```bash
|
|
POST /tally/webhooks
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"formId": "GxdRaQ",
|
|
"url": "https://your-endpoint.com/webhook",
|
|
"eventTypes": ["FORM_RESPONSE"]
|
|
}
|
|
```
|
|
|
|
## Notes
|
|
|
|
- Form and workspace IDs are short alphanumeric strings (e.g., `GxdRaQ`, `3jW9Q1`)
|
|
- Block `uuid` and `groupUuid` fields must be valid UUIDs (GUIDs)
|
|
- Page-based pagination with `page` and `limit` parameters
|
|
- Rate limit: 100 requests per minute
|
|
- API is in public beta and subject to changes
|
|
- Creating workspaces requires a Pro subscription
|
|
|
|
## Resources
|
|
|
|
- [Tally API Introduction](https://developers.tally.so/api-reference/introduction)
|
|
- [Tally API Reference](https://developers.tally.so/llms.txt)
|
|
- [Tally Help Center](https://help.tally.so/)
|