Latest News from the Abyssale team

Abyssale Changelog

Update
API

Abyssale Now Has Official SDKs for Node.js and Python

Guillaume avatar
Shared by Guillaume • August 21, 2026

Hi there,

Building on top of the Abyssale API has meant hand-rolling HTTP requests since day one — right auth headers, right payload shape, your own retry logic if a request timed out. That's no longer the only option. Abyssale just shipped its first official SDKs:

  • @abyssale/sdk for Node.js/TypeScript (now at 1.3.0),
  • and abyssale for Python (now at 1.1.0).

Both SDKs wrap the core REST API — designs, generation, projects, workspace templates, exports, and, as of this release, webhook signing — in a typed, idiomatic client for their respective language, so integrating Abyssale into a codebase looks like using any other well-maintained SDK, not stitching together fetch calls.


@abyssale/sdk for Node.js / TypeScript

Install it with:

npm install @abyssale/sdk

Node.js 20.3 or later is required — not just Node 20. The retry middleware relies on AbortSignal.any, which only landed in 20.3.0, so installing on 20.0–20.2 succeeds but fails at runtime.

Configuration is entirely environment-variable driven — no constructor, no setup step beyond setting ABYSSALE_API_KEY. Note that the SDK throws at import time if that variable isn't set, which occasionally surprises people in test environments:

import abyssale from '@abyssale/sdk';

const { data, error } = await abyssale.generateImage('your-design-id', {
elements: {
title: { payload: 'Hello World' },
background: { background_color: '#FF0000' },
},
template_format_name: 'facebook-post',
});

console.log(data?.file.cdn_url);

A few things worth knowing:

  • Never throws on HTTP errors. Every method returns { data, error, response }, so error handling stays explicit instead of relying on try/catch around network calls.
  • Automatic retries, deliberately narrow. 5xx is retried on reads only — a generation POST is never repeated, since a timeout doesn't mean the render didn't happen, and retrying it could bill you twice. A 429 carrying a Retry-After header gets the full retry ladder; a bare 429 gets a single one-second probe, since that status alone can mean either "out of credits" or "hit the gateway's per-second ceiling." feature_not_in_plan is never retried. Retry count is configurable via ABYSSALE_MAX_RETRIES.
  • Built-in polling helpers. waitForGenerationRequest and waitForDuplicationRequest handle the poll loop for async jobs (multi-format generation, multi-page PDFs, workspace template duplication) so you don't have to write your own polling logic.
  • Fully typed. Every request and response type is generated directly from the OpenAPI spec, so IDEs get full autocomplete on every field.
  • Webhook signing, new in this release. Three methods for managing your webhook signing secret (list, create, delete), plus a signature verifier importable on its own from @abyssale/sdk/webhooks — it needs no API key at all, since verifying a signature is pure local cryptography, not an API call.

One caveat: the design-import surface is deliberately left out of the SDK for now, since it's still in Alpha and the format may change — the OpenAPI spec used to generate the client strips those endpoints so a routine regeneration can't accidentally reintroduce them before things stabilize.

npmjs.com/package/@abyssale/sdk

github.com/getabyssale/abyssale-sdk

developers.abyssale.com/sdks/nodejs


Abyssale for Python

The same core coverage is now available for Python teams, published to PyPI as abyssale, at 1.1.0.

pip install abyssale
from abyssale import abyssale, AbyssaleAPIError

try:
banner = abyssale.generate_image(
"your-design-id",
elements={
"title": {"payload": "Hello World"},
"background": {"background_color": "#FF0000"},
},
template_format_name="facebook-post",
)
print(banner.file.cdn_url)
except AbyssaleAPIError as e:
print("API error:", e.id)

The two SDKs are built on the same underlying API, but they don't handle errors the same way. Where the Node SDK returns { data, error } and never throws, the Python SDK raises AbyssaleAPIError on failure, carrying a machine-readable id you can match against. Worth keeping in mind if you're used to one and picking up the other.

Request bodies in Python are plain dicts by design rather than generated model classes — the elements schema is an anyOf with no discriminator, so a strict model would risk mis-coercing valid payloads.

Like the Node SDK, this release also adds webhook signing support via abyssale.webhooks: the same list/create/delete methods for your signing secret, plus a signature verifier that works without an API key configured.

And the same Alpha caveat applies here too: design-import endpoints are intentionally excluded from the generated client while that feature's format is still settling.

pypi.org/project/abyssale

github.com/getabyssale/abyssale-python-sdk

developers.abyssale.com/sdks/python


Why this matters

Every integration built directly against the raw REST API was solving the same problems over and over: retry logic that doesn't double-bill you, polling for async jobs, verifying webhook signatures by hand. With official, typed SDKs for both Node.js and Python — and now first-class webhook signing in both — that work is done once, centrally, and maintained alongside the API itself.

Questions about migrating an existing integration to one of the SDKs? Reach out at help@abyssale.com.

Update
API

Designs Can Now Be Created by API, Not Just in the Builder

Guillaume avatar
Shared by Guillaume • August 21, 2026

Hi there,

For as long as the Abyssale API has existed, it's followed the same rule: build the design in the editor first, generate from it after. That rule just changed.

You can now send a full design as a single JSON payload and have Abyssale create it for you — and export any existing design back into that same shape.

On top of that, workspace templates are now reachable by API too, alongside a round of platform-level improvements aimed squarely at anyone running Abyssale as part of an integration.


Design Import from JSON — Alpha

Until now, the editor was a mandatory first step. Every design, however simple, had to be built by hand before the API could generate a single asset from it. That dependency is gone: a design can now be described entirely as JSON and imported directly, without ever opening the builder.

The reverse works too — any existing design can be exported into that same JSON shape, which means you can pull a design out, inspect or modify its structure, and import it back as a new one.

This isn't limited to simple static visuals. It covers:

  • Static designs
  • Animated designs
  • Print designs, including multi-page PDFs

Why it matters

This turns design creation itself into something automatable, not just design generation. A few things become possible that weren't before:

  • Programmatic design creation — build designs directly from code instead of a human building them first in the UI
  • Library migration — bring an existing set of designs from another tool or system into Abyssale by generating the JSON payloads programmatically
  • AI agent-built designs — since a design is now just structured data, an agent can construct one directly, rather than being limited to filling in variables on a template a human already built
  • Duplicate, tweak, re-import — export a design to JSON, change a handful of fields, and import it as a variant, without touching the editor at all

A note on Alpha

The feature is marked Alpha because the JSON format itself may still evolve — but it's live and rolled out to everyone, with no partner signup or waitlist required to access it. Anyone can start using it today.


Workspace Templates, Now by API

Workspace templates, your brand masters, standardized layouts, whatever your team treats as a starting point — were previously something you could only spin up into a project from inside the builder. That's now available by API as well: list the templates in a workspace, and turn any one of them into a new project programmatically.

This is particularly useful if you're standardizing on a fixed set of brand templates across multiple teams or client accounts and want project creation to be part of an automated flow rather than a manual step someone has to remember.


Platform Improvements

Alongside the two feature additions, this release includes a set of changes to the API's underlying behavior:

  • Consistent error handling across every endpoint, so a failure looks and behaves the same way no matter which part of the API triggered it
  • Per-workspace rate limiting, so usage in one workspace doesn't affect another
  • Versioned responses, so integrations can rely on a stable response shape even as the API evolves

In practice, this means fewer support tickets from integrations breaking in confusing, hard-to-diagnose ways — and a clear, consistent answer any time someone asks "why did my request fail?"


Developer Docs, Rebuilt

The developer documentation has been rebuilt from the ground up, with a quickstart, a full error reference, a changelog, and a complete endpoint catalogue, all in one place.

developers.abyssale.com

api-reference.abyssale.com

Design Editor
Update
API
Spreadsheet
Quick Generation
Abyssale Intelligence (AI)

AI Just Got a Permanent Seat in the Design Builder

Guillaume avatar
Shared by Guillaume • August 18, 2026

Hi there,

For a while, AI in Abyssale meant reaching into a menu, buried a click or two away from the layer you were actually working on. That's changed. Remove Background, Auto Focus, the Eraser, and AI Text-to-Image now sit together in a single AI toolbar that appears the moment you select an image layer, and each of them just got meaningfully more capable.

Here's a full walkthrough of what's new, with a link to the dedicated guide for each feature if you want the details.


One Toolbar, Four AI Actions

New AI toolbar at the bottom of the canvas

Select any image layer in the Design Editor and an AI toolbar appears at the bottom of the canvas, with all four AI actions right there: Remove Background, Focus, Erase, and Ai text to image. No more navigating through separate modals or side-panel menus depending on which action you needed, it's the same entry point every time, for every action.

From there, each action opens its own context directly in the toolbar, where you configure it and generate without leaving the canvas.


Remove Background: Pick the Model, Fine-Tune the Result

Background removal now gives you a choice of model instead of a single fixed engine. Click the model dropdown to see the available options, each labeled with its relative AI credit cost:

  • Bria RMBG 2.0 (default) — a high-precision, licensed-data model that's a safe default for most images
  • Birefnet — an open-source segmentation model, a solid freely-licensed alternative
  • Ideogram's — strong at fine detail like hair or fur
  • PixelCut — built for e-commerce and product photography
  • imageUtils — a straightforward, no-frills option

If your first pass doesn't cleanly isolate the subject, especially around tricky edges, switching models is usually faster than repeating the same one. Two additional controls round out the feature: Trim Transparent Pixels, which crops the image down to its subject after removal, and Manual Selection, which lets you draw a box around the area you want to guarantee is kept (Design Editor only, not available via API).

Once you're happy with a result, you can save it as the rule for that layer going forward, so every future variation gets the same treatment automatically.

Read the full guide: Remove Image Backgrounds


Auto Focus: Smarter Framing for People and Objects

Auto Focus keeps your subject perfectly framed regardless of the original image's size or orientation, and it offersn the two detection models depending on what you're framing:

  • People Model — built for human subjects, with control over portrait framing (face, head, shoulders, or full body), zoom intensity, and, when there's more than one person in frame, which subject takes priority (largest, centered, leftmost, rightmost, or all). Enterprise plans also get Celebrity Matching, letting you name a public figure to automatically center the focus on them.
  • General Model — for objects, animals, vehicles, or complex scenes. The AI detects individual elements as "Tags" you can select and merge into a single composition, with the same zoom controls (off, low, medium, max).

During automated variations, if the AI detects the tags you've chosen in a new image, it merges them automatically to keep your composition consistent at scale, useful for anything from headshots to product shots run through a large batch.

Read the full guide: Auto Focus


AI Eraser: Remove Objects Without Leaving the Canvas

The AI Eraser lets you paint over any object, logo, or unwanted detail in an image and have it intelligently replaced with matching background content — no manual retouching required. It's a natural fit for cleaning up product photos, removing logos from reused assets, or hiding distracting background elements.

Two selection modes are available: brush mode, with an adjustable size for fine edges or broader areas, and bounding box mode, for quickly clearing larger or simpler shapes. Like the other AI actions, you now choose which AI model handles the erase before applying it, and the edit is non-destructive until you confirm it.

Read the full guide: Erase Unwanted Objects from Images


AI Text-to-Image: More Models, Reference Images, and API Access

AI model selector for Text-to-Image

Text-to-Image turns a written description into a custom visual directly inside the builder, no stock photo search, no manual illustration. The feature now supports multiple AI models instead of a single one, and depending on the model you choose, you can add up to 4 reference images to steer the generation instead of working from the prompt alone.

Other capabilities carried over and still worth knowing:

  • Choose the output ratio (square, landscape, portrait, ultra-wide, and more) so the generated image fits your layout without awkward cropping
  • Browse your prompt history during the current session to reuse or tweak earlier prompts
  • Auto-generate a starting prompt from an existing image in the layer, if you want a variation that stays visually consistent with what's already there

Text-to-Image is also available through the API: pass a text_to_image prompt on an image element instead of a static URL, and Abyssale generates the visual in real time as part of your automation.

Read the full guide: AI Text to Image


Save Once, Scale Everywhere

AI Text-to-Image controls in Design Settings

The biggest shift isn't any single action, it's that none of them are one-off anymore. Save an AI action once (Remove Background, Auto Focus, or Text-to-Image) and it becomes the standing rule for that image layer.

Every future variation of the design inherits it automatically, whether it's generated through Quick Generation, a spreadsheet, or the API, including having each variation generate its own unique AI image, not just reuse the same one.

That reach comes with control. In Design Settings, you decide whether AI Text-to-Image is allowed on a design at all. For Quick Generation specifically, you can also decide whether the end user creating a new variation is allowed to generate an AI image inside it, or not, so self-serve generation stays exactly as open, or as locked down, as you want it.

For the technical details on wiring any of this into your own workflows, remove_bg, auto_focus, and text_to_image element properties, model names, and payload examples — the API reference has the full spec.

Read the API reference: Image element properties

Design Editor
Update

Large Format Print PDF : Now Live

Guillaume avatar
Shared by Guillaume • June 19, 2026

Hi there,

You can now generate print-ready PDFs for large formats directly in Abyssale, at actual dimensions, no workarounds needed.


What's new

Larger canvas sizes

Create print formats up to 10 000 mm per side. Metro posters, roll-ups, billboards, bus shelters, all supported natively.

Custom DPI per format

Set the exact resolution your printer requires, independently for each format in your design. 300 DPI for close-up print, 72–150 DPI for large outdoor formats.

Live credit cost estimate

The generation cost in credits is displayed in real time as you adjust dimensions and DPI — no surprises before you generate.

Higher asset upload limit

Import source files up to 500 MB, so you can bring in high-res images and assets without compression.


How it works

New design : Create a new design, select a Print design type (Multi format or Multipage), then define your format dimensions in mm or inches. For each format, set the DPI that matches your print requirements in the design editor.

Existing design : Already have a print design? Simply add a new format on it to your large format size, then adjust the DPI accordingly.

The maximum available DPI updates automatically based on your canvas size, you'll always see what's possible before generating.

Design Editor
Update

Introducing the Eyedropper Tool: Perfect Color Matching in One Click!

Guillaume avatar
Shared by Guillaume • April 23, 2026

Hi there,

We’ve just released a highly requested addition to our design toolkit that will make your branding workflows smoother than ever: the Eyedropper tool!

This feature is designed to give you absolute precision when selecting colors, ensuring your generated visuals remain perfectly consistent with your brand assets or reference images.


What’s New?

  • Pixel-Perfect Selection: Grab any color directly from your canvas with total accuracy. No more copying and pasting hex codes from external windows.
  • Brand Consistency: Easily match text, shapes, or button colors to specific elements within your uploaded images or logos.
  • Faster Iteration: Speed up your design process by sampling colors on the fly, allowing you to experiment with different palettes in seconds.

How to Use It

  1. Open the Design Editor: Navigate to any of your designs or templates within a project.
  2. Select a Layer: Click on the text, shape, or element you wish to recolor.
  3. Open the Color Picker: In the right-hand "Style" or "Text" panel, click on the color square
  4. Activate Eyedropper: Click the new Eyedropper icon next to the hex code input
  5. Sample Your Color: Hover over any part of your canvas and click to instantly apply that color to your selected layer.

Now you can match your creative vision with surgical precision, keeping your designs on-brand every single time!

Enjoy a more precise and efficient creative experience!

Design Editor
Update

Bring Your Text to Life: Introducing the Typewriter Animation Effect!

Guillaume avatar
Shared by Guillaume • April 22, 2026

Hi there,

Ready to add a touch of storytelling and focus to your animated designs? We’re thrilled to introduce a highly-requested addition to our animation toolkit: the Typewriter effect!

This new feature allows you to reveal your text layer by layer, mimicking the classic look of a typewriter. It’s the perfect way to grab attention, build suspense, or simply add a sophisticated, dynamic feel to your headlines and quotes.


What’s New?

  • Typewriter Reveal: Animate your text so it appears character by character. This is ideal for highlighting key messages and ensuring your audience reads every word as it appears.
  • Granular Timing Control: Because this is integrated into our full animation timeline, you can control exactly when the typing starts and how fast it progresses using keyframes.
  • Professional Polish: Move beyond simple fades. The typewriter effect adds a layer of professional motion that makes your social media stories, ads, and banners stand out from the crowd.

How to Use It

Adding a "spin" to your words is simple and follows our standard animation workflow:

  1. Open an animated design in the Abyssale Design Builder.
  2. Select the text layer you wish to animate.
  3. In the right-side panel, navigate to the "Animation" section and click "Add Effect".
  4. Select the new "Typewriter" effect from the list.
  5. Adjust on the timeline: Drag the keyframes to set the start and end points of the typing sequence to perfectly time it with your other design elements.

Now you can create more engaging, narrative-driven content with just a few clicks. We can't wait to see how you use this to tell your brand's story!

Enjoy a more dynamic and expressive creative generation experience!

Improvement
Workspace

Duplicate Your Designs for Professional Print!

Guillaume avatar
Shared by Guillaume • April 20, 2026

Hi there,

We’ve just rolled out a enhancement to one of our most-used workflow features! You can now duplicate any existing design into a Print format

.

Previously, duplication was limited to switching between Static and Animated designs. This new update bridges the gap between digital and physical, allowing you to turn your web-optimized creatives into high-quality, print-ready assets in just a few clicks. Whether you're moving from a social banner to a flyer or a digital ad to a professional brochure, your workflow just got a lot more versatile!


What’s New?

  • Static/Animated to Print Conversion: You are no longer restricted to digital formats. You can now clone any design and instantly convert it into a Print Multipage or Print Multi-format design.
  • Automatic Print Spec Integration: When you duplicate to Print, you gain immediate access to professional settings like CMYK color profiles, bleed and crop marks, and units in inches or millimeters.
  • Streamlined Asset Reuse: Stop rebuilding templates from scratch for different mediums. Use your existing digital brand assets and layout logic to jumpstart your print production.

How It Works

Transitioning your designs from screen to paper is straightforward:

  1. Select your Design: Open the project dashboard and find the design you wish to duplicate.
  2. Click Duplicate: Click on the three dots (...) menu on your design card and select "Duplicate."
  3. Choose Print Type: In the duplication modal, you will now see the option to select Print as the design type.
  4. Configure & Save: Choose between Multipage (for brochures) or Multi-format (for flyer packs), name your new design, and hit "Duplicate design."

Your new print design will open in the editor, ready for you to define your bleed areas and generate a professional, print-ready PDF!

Enjoy a more connected and efficient creative generation experience across all your media!

Improvement
API
Design Editor
Abyssale Intelligence (AI)

Zoom Control Comes to the Generic Auto Focus Model!

Guillaume avatar
Shared by Guillaume • April 09, 2026

Hi there,

A focused improvement for anyone using Auto Focus with the General detection model. We've brought the same Zoom Level control that was already available on the People model to the General model — giving you consistent, precise control no matter what you're framing.


What's New?

The General model previously locked the zoom to the maximum, cropping tightly to the edges of the detected object with no room to breathe. Now you're in control.

After running detection and selecting your focus tags, you'll find a new Zoom Level selector with four options:

  • Off — no zoom applied, the full image is used as-is.
  • Low — a subtle crop that keeps plenty of context around the detected subject.
  • Medium — a balanced crop for most use cases.
  • Max — the previous default behavior, cropping tightly to the edges of the detected object.

How It Works

  1. Select an image layer and click Modify with AI in the properties panel.
  2. Choose Auto Focus and select the General detection model.
  3. Click Launch Detection and select the tag(s) you want to focus on.
  4. Pick your preferred Zoom Level — Off, Low, Medium, or Max.
  5. Click Apply AI Focus to save your settings.

The zoom configuration applies automatically to all future generations for that layer, whether via API, Spreadsheet, or Quick Generation.

Update
Improvement
API

Copy Your Font ID Directly from the Creative Hub!

Guillaume avatar
Shared by Guillaume • April 08, 2026

Hi there,

A small but mighty improvement for all API users out there. We've made it significantly easier to find and use the right font ID when customizing layers through the API.


The Problem We Solved

When generating visuals via the API, you can override the font of any text layer by passing a font ID in your request. Simple in theory but finding the right ID was anything but. Your only option was to call a dedicated API endpoint to retrieve the full list of fonts on your workspace, then dig through the results to find the one you needed.

No way to do this directly from the platform.


What's New?

You can now copy the ID of any custom font directly from the Creative Hub with a single click. No more API calls just to find a font reference.


How It Works

  1. Head to the Creative Hub and navigate to Manage Fonts.
  2. Open the font family you need.
  3. Click the "Copy Font ID" button at the top of the page.
  4. Paste it directly into your API request — done.

Good to Know

  • This works for custom fonts you've uploaded to your Creative Hub only.
  • For native fonts (Google Fonts included in the platform by default), you'll still need to retrieve the full font list via the GET /fonts endpoint.

A small click that saves a lot of back-and-forth!

Update
Improvement
Quick Generation

Edit Visuals Right From the Quick gen

Guillaume avatar
Shared by Guillaume • April 08, 2026

Hi there,

We've just made the Quick Generation workflow even smoother with a quality-of-life improvement that saves you a few clicks every time you want to tweak a result.


What's New?

When you generate a visual using the Quick Generation method, you'll now see an "Edit visual" button directly in the preview. Spot something you'd like to adjust, the image position, a text element, or any other detail, and you can jump straight into editing without ever leaving the workflow.

Previously, if you wanted to modify a generated visual, you had to exit the workflow, navigate to the Generated Visuals page, locate the right visual, and then open it for editing. Those days are over.


How It Works

  1. Generate your visual using the Quick Generation workflow as you normally would.
  2. In the preview, click the "Edit visual" button that now appears directly on the result.
  3. Make your adjustments in the Light Editor, reposition your image, tweak your text, or refine any layer.
  4. Save your changes to update the visual and automatically create a new version.

A Few Things to Know

  • The "Edit visual" button is available on static visuals only, animated, video, and PDF outputs are not supported.
  • This feature is accessible to users with a Light Operator role or higher.

No more interrupting your creative flow just to polish a detail. Generate, preview, and refine — all in one place.