Docs Migrate from v1
Migrating from v1
For most v1 URLs the change is one word: /v1/ becomes /v2/. The details are below.
B Klug, updated October 25, 2026
Version 1 of the API drew a name on a flat colour, with an optional icon, and returned a PNG. Version 2 keeps the same idea of a URL that makes a logo and the same main parameters, but it draws far more kinds of design and can return SVG and other formats. Version 1 keeps working at https://api.logolava.com/v1/ and its reference is still online. Nothing here asks you to move, but new work should use v2.
Change the path
before https://api.logolava.com/v1/?text=Juniper+Vale&seed=1140956701&w=640&h=240
after https://api.logolava.com/v2/logo.png?text=Juniper+Vale&seed=1140956701&w=640&h=240The v2 endpoint is /v2/logo with a format extension, where v1 answered at /v1/. The query string carries over, with the changes in the table. Here are the two requests drawn, to show that the same seed gives a different logo in each version:

What happens to each v1 parameter
| v1 | v2 |
|---|---|
txt, text | The same. domain is an alias too. |
w, h | The same, now 16 to 2048 pixels. The v2 default is 640 by 240; v1's was 300 by 100. |
seed | The same name, but the drawing is v2's, so a seed gives a different logo than it did in v1. |
scheme (light, dark, black, white) | The same values. See scheme. |
bg | The same, and it also takes a background type, several colours, or transparent. |
color, color2 | The same: the colour of the text, and of the second word in a split name. |
style | Mapped to font categories, fontcat. |
font as a number, icon | Not carried over. v2 ignores them, sends a warning, and chooses a font and a symbol itself. Use a v2 font id and symbol id instead. |
iconstyle, randicon | Ignored. Use symbol to choose a mark or symbol=none for none. |
grad, gradcolor | Mapped to a two colour bg. |
margin | Mapped to pad. |
nobr=true | Becomes wrap=0. |
showmargin=true | Becomes debug=1. |
shadow | Ignored. |
api_key | The same name, and your existing key works. See below. |
Keys and the Referer header
Version 1 asked for an API key when a request came from a web page on another site, and drew the words "api key needed" into the image when the key was missing. Version 2 asks for nothing: you get 60 logos a minute without a key. A key raises that to 300 a minute and 50,000 a day. Your key works on both versions.
Seeds and stored URLs
If you stored v1 URLs with seeds, those images are unchanged as long as you leave them on /v1/. Moving the same seed to /v2/ picks a new logo, because the engine is different. So choose a logo again in v2, then store its new seed. The variations endpoint is a quick way to look at a dozen designs of your name and pick one. From then on the seed promise holds: that URL will draw the same logo.
What you gain
- SVG, WebP, AVIF and JPG output next to PNG, and a JSON description of each design.
- Symbols, layouts, containers, backgrounds and typefaces chosen by tone and industry. See the parameters.
- Catalogues of fonts, symbols and palettes you can query. See catalogues.
- Browser caching: a seeded v2 image is cached for a year and does not count against your limits after the first request.
- An optional AI mode.
Next: Changelog