Visuals API
Manage and duplicate visuals via the Semaphor Management API
Overview
The Visuals API allows you to create, retrieve, update, delete, and duplicate visuals (cards/frames) programmatically.
Base path:
All endpoints require authentication and permission checks.
Endpoints
List Visuals
GET /visuals
- Lists visuals accessible to the authenticated user.
- Supports search, pagination, and returns permission metadata.
Query Parameters:
projectId
(string, optional)tenantId
(string, optional)search
(string, optional)limit
(integer, default: 500)offset
(integer, default: 0)
Example Request:
Example Response:
Create Visual
POST /visuals
- Creates a new visual.
Request Body:
- frameObject: This is a JSON representation of a visual frame. If omitted, an empty frame will be created. You can use the frameObject from an existing visual as a template.
Sample frameObject:
Example Request:
Example Response:
Duplicate Visual
POST /visuals/:id/duplicate
- Duplicates an existing visual, including its frameObject and properties.
- The new visual will have a new ID, and you can optionally override the title and description.
Request Body (optional):
If no body is provided, the duplicate will have the original title with "(Copy)" appended and the same description.
Example Request:
Example Response:
Get Visual by ID
GET /visuals/:id
- Returns details for a specific visual, including permissions.
Example Request:
Example Response:
Update Visual
PUT /visuals/:id
- Updates visual fields (title, description, frameObject, isPrivate, tenantId).
Request Body:
Example Request:
Example Response:
Delete Visual
DELETE /visuals/:id
- Deletes a visual by ID.
Example Request:
Example Response:
Error Handling
- All endpoints return standard error responses with appropriate HTTP status codes (400, 401, 403, 404, 409, 500, etc.).
- Validation errors return details in the response body.
Notes
- All endpoints require authentication (Bearer token).
- Permission checks are enforced for all operations.