List all designs
Sample request
curl -H "x-api-key: $ABYSSALE_API_KEY" \
"https://api.abyssale.com/designs?type=static"import abyssale from '@abyssale/sdk';
const { data, error } = await abyssale.listDesigns({
"type": "static"
});
if (error) console.error(error.id, error.message);
else console.log(data);from abyssale import Abyssale
with Abyssale() as client:
result = client.list_designs(type="static")
print(result)Example 200 response
[
{
"preview_url": "https://production-banners.s3-eu-west-1.amazonaws.com/templates/e0d292f2-ec21-11e9-a539-3c408bf94155/a9b3c668-7b84-4924-adf0-815dae727d32.png",
"id": "64238d01-d402-474b-8c2d-fbc957e9d290",
"template_id": "64238d01-d402-474b-8c2d-fbc957e9d290",
"name": "Ad campaign fall 2025",
"type": "static",
"created_at": 1649942114,
"updated_at": 1649942114,
"project_id": "9d1f2b7c-5a44-4c3e-9f21-0b8e6d4a1c73",
"project_name": "Fall campaigns",
"category_id": "9d1f2b7c-5a44-4c3e-9f21-0b8e6d4a1c73",
"category_name": "Fall campaigns",
"version": "v2026-08-21"
}
]Example 400 error response
{
"id": "invalid_payload",
"message": "malformed id category_id",
"errors": [
{
"path": "category_id",
"code": "invalid_payload",
"message": "malformed"
}
]
}Retrieve all designs available in your Abyssale workspace. Each design defines the visual layout, available formats (dimensions), and configurable elements (text, images, shapes, etc.) that can be overridden during image generation. Filter by design type or project using query parameters.
Behaviour, limits and caveats
A design lives in a project. Organisation-level master designs are workspace templates, live in a category, and are listed by GET /workspace-templates instead — they never appear here.
Query parameters
project_id string (uuid)
Unique identifier (UUID) of a project. Filter designs by project.
type string
Filter designs by one of these types: static, animated, printer, printer_multipage. An unknown value is ignored and the full unfiltered list is returned — this never answers 400 (long-standing behavior existing integrations rely on). One of "static", "animated", "printer", "printer_multipage".
Response 200
The workspace's designs.
Errors
Every failure uses the shared error envelope — {id, message, errors?}. Branch on id, never on message. See Errors.
| Status | When |
|---|---|
400 | project_id is not a UUID. |
401 | Unauthorized — missing or invalid API key. |
429 | Too Many Requests. |
500 | Internal Server Error — an unexpected error occurred on our side. |
