# Designs

A design is a reusable creative blueprint that defines both the visual structure and output specifications of your marketing assets. It includes at least:

* one format *(dimension, i.e. Facebook feed 1200x628 or IAB 300x250)*
* one element *(text, button, image, shape...)*

{% hint style="info" %}
&#x20;[Discover how to create your first design on Abyssale](https://help.abyssale.com/en/articles/99196-create-my-first-template)
{% endhint %}

Each layer in a design has configurable properties that control its appearance and behavior. These properties can include:

* Visual attributes (colors, opacity, effects)
* Content values (text content, image sources)
* Positioning and layout settings
* Layer-specific configurations

{% content-ref url="/pages/CQ38LCWjucsLMAfXhIfu" %}
[Element properties](/rest-api/generation/element-properties.md)
{% endcontent-ref %}

The properties you set in the design builder serve as default values. However, you can dynamically override any property at generation time through the API, enabling:

* Dynamic styling changes
* Contextual customization
* A/B testing variations

### Design Types&#x20;

Our platform supports four distinct design types, each optimized for different output needs:

#### Static Design

* Purpose: Creates static visual assets
* Output formats: PNG, JPEG, PDF
* Use case: Single-frame marketing assets like social posts or display ads

#### Animated Design

* Purpose: Creates dynamic visual content with motion
* Features:
  * Animation effects (fade, slide, transitions)
  * Optional background video support
* Output formats:
  * MP4 video
  * Animated GIF
  * HTML5 banner (ZIP package)

#### PDF Design

* Purpose: Creates print-ready single-page documents
* Output format: PDF
* Use case: Brochures, flyers, or print advertisements

#### Multi-page PDF Design

* Purpose: Creates multi-page documents
* Output format: PDF
* Use case: Catalogs, presentations, or multi-page marketing materials

<figure><img src="/files/T1vK9BA452vlSJ6uMxnJ" alt=""><figcaption></figcaption></figure>

#### Here is the mapping between a template type and supported generation file types:

<table><thead><tr><th width="195.33333333333331">Template type</th><th width="69" data-type="checkbox">jpeg</th><th width="71" data-type="checkbox">png</th><th width="63" data-type="checkbox">pdf</th><th width="58" data-type="checkbox">gif</th><th width="86" data-type="checkbox">html5</th><th width="69" data-type="checkbox">mp4</th><th data-type="checkbox">printable PDF</th></tr></thead><tbody><tr><td>static</td><td>true</td><td>true</td><td>true</td><td>false</td><td>false</td><td>false</td><td>false</td></tr><tr><td>animated</td><td>false</td><td>false</td><td>false</td><td>true</td><td>true</td><td>true</td><td>false</td></tr><tr><td>printer</td><td>false</td><td>false</td><td>false</td><td>false</td><td>false</td><td>false</td><td>true</td></tr><tr><td>printer_multipage</td><td>false</td><td>false</td><td>false</td><td>false</td><td>false</td><td>false</td><td>true</td></tr></tbody></table>

### Get your designs

Abyssale provides a list of free templates in the `Templates library` page. Feel free to use one to start designing a template instead of doing it from scratch.

**Only designs listed in the `Projects` page are accessible via API**.

{% hint style="info" %}
[The full api reference can be found here](https://api-reference.abyssale.com/#tag/Templates/paths/~1templates/get)
{% endhint %}

## Get Designs

> Retrieve all of your designs (containing for each the id, name, creation date & update date)

```json
{"openapi":"3.0.3","info":{"title":"API Reference - Abyssale","version":"0.0.1"},"tags":[{"name":"Designs","description":"A design is a layout including at least:\n- one format (dimension, i.e. Facebook feed 1200x628 or IAB 300x250)\n- one element (text, button, image, shape...)\n\nAll elements have their own properties that can be customized (color, text payload, image...).\n\nOnce designed, all properties of the design will act as a reference for subsequent image generation. Obviously, those properties can be overridden by sending new parameters in the generation API call.\n\nAbyssale provides a list of free template designs in the Template Library page. Feel free to use one to start designing your design instead of doing it from scratch.\n\n**All of your designs are listed in the different project pages, only those are accessible via API.**\n"}],"servers":[{"url":"https://api.abyssale.com","description":"Main Production Server"}],"security":[{"api_key":[]}],"components":{"securitySchemes":{"api_key":{"description":"All of your Abyssale requests must contain a `x-api-key header` with your API Key.","type":"apiKey","name":"x-api-key","in":"header"}},"schemas":{"Design":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier (UUID) of the design."},"name":{"type":"string","description":"Name of the design."},"type":{"type":"string","enum":["static","animated","printer","printer_multipage"],"description":"Type of the design"},"created_at":{"type":"integer","description":"Timestamp of when the design has been created."},"updated_at":{"type":"integer","description":"Timestamp of when the design has been updated for the last time."},"category_name":{"type":"string","nullable":true,"description":"Design Category"}},"required":["id","name","created_at","updated_at"]}}},"paths":{"/designs":{"get":{"summary":"Get Designs","description":"Retrieve all of your designs (containing for each the id, name, creation date & update date)","tags":["Designs"],"parameters":[{"in":"path","name":"category_id","schema":{"type":"string","format":"uuid"},"required":false,"description":"Unique identifier (UUID) of a category. Filter designs by a category."},{"in":"path","name":"type","schema":{"type":"string","enum":["static","animated","printer","printer_multipage"]},"required":false,"description":"Filter designs by one of these types static, animated, printer, printer_multipage"}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"type":"array","items":{"allOf":[{"$ref":"#/components/schemas/Design"},{"type":"object","properties":{"preview_url":{"type":"string","format":"uri","description":"Preview Image URL of the first design format"}}}]}}}}}}}}}}
```

```
[
  {
    "id": "3f1900f0-9a0f-4d3f-867e-1bb3a6e4fa2d",
    "name": "Abyssale demo - FB Square",
    "type": "static",
    "created_at": 1681215684,
    "updated_at": 1681217794,
    "preview_url": "https://production-banners.s3-eu-west-1.amazonaws.com/templates/e0d292f2-ec21-11e9-a539-3c408bf94155/65422510-332e-4da6-ab50-d40ff532d000.png",
    "category_name": "Abyssale Demo"
  },
  {
    "id": "46d22c62-d134-44d3-a040-138e4ea9ea08",
    "name": "Abyssale demo - FB Feed",
    "type": "static",
    "created_at": 1688631025,
    "updated_at": 1688977170,
    "preview_url": "https://production-banners.s3-eu-west-1.amazonaws.com/templates/e0d292f2-ec21-11e9-a539-3c408bf94155/9c872731-da6f-4923-b342-7c4250ac94cc.png",
    "category_name": "Abyssale Demo"
  }
]
```

This sample contains 2 designs:

* *Abyssale demo - FB Feed* (static template) with the `46d22c62-d134-44d3-a040-138e4ea9ea08` template ID
* *Abyssale demo - FB Square* (static template) with the `3f1900f0-9a0f-4d3f-867e-1bb3a6e4fa2d` template ID

The `preview_url` property is the image associated with the first format in the template.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developers.abyssale.com/rest-api/designs.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
