Content REST API
Manage content views programmatically via the REST API.
Endpoints
List Content Blocks
Get all content views for an app.
GET /v1/apps/:appId/content
Query Parameters:
| Parameter | Type | Description |
|---|---|---|
status | string | Filter by status: draft, published, archived |
limit | number | Number of results (default: 20, max: 100) |
page | string | Page number |
Example Request:
curl -H "Authorization: Bearer your-api-key" \
https://api.getresync.com/v1/apps/7/content?status=published
Example Response:
{
"data": [
{
"id": 456,
"name": "WelcomeCard",
"status": "published",
"publishedAt": "2025-11-23T10:00:00Z",
"items": [
{
"type": "text",
"content": "Welcome to our app!",
"styles": {}
}
]
}
],
"pagination": {
"hasMore": false,
"nextCursor": null
}
}
Get Content Block
Get a specific content view by ID.
GET /v1/content/:contentViewId
Example Request:
curl -H "Authorization: Bearer your-api-key" \
https://api.getresync.com/v1/content/456
Create Content Block
Create a new content view.
POST /v1/apps/:appId/content
Request Body:
{
"name": "NewWelcomeCard",
"status": "draft",
"items": [
{
"type": "text",
"content": "Welcome!",
"styles": {
"fontSize": 24,
"color": "#333"
}
}
]
}
Update Content Block
Update an existing content view.
PATCH /v1/content/:contentViewId
Request Body:
{
"status": "published"
}
Delete Content Block
Delete a content view.
DELETE /v1/content/:contentViewId
Content Status
| Status | Description |
|---|---|
draft | Content is being created |
published | Content is live and visible in apps |
archived | Content is hidden but preserved |
Webhooks
Content views trigger webhooks:
content.published- Content publishedcontent.unpublished- Content archived