QR Code

QR Code

Simple API for creating SVG QR codes with an optional error correction level.

API description

About the API:

This API allows you to create custom QR codes with any data and error correction level you want. 

What this API receives and what your API provides (input/output)?

The endpoints take a JSON object as input and return an SVG image. See the documentation of individual endpoints for the structure of the payload. 

What are the most common uses cases of this API?

 This API shines when you need to create dynamic QR codes on demand; such as for contract or invoice links, user-specific promotions, or even for printing serial numbers on products.

Are there any limitations to your plans?

The endpoints will automatically attempt to encode your data in the most efficient way possible, however QR codes have a limit of how much data can be stored:

  • Numeric only: 7089 digits
  • Alphanumeric: 4296 characters
  • Binary: 2953 bytes

API Documentation


This endpoint encodes the given data into a QR code of minimal size.  The result is an SVG file (image/svg+xml).

The body should be a JSON object with the following keys:

  • data: a string or byte arrray to encode
  • ec_level (optional): a string of which error correction level to use
    • "L": recoverable up to 7%
    • "M": recoverable up to 15%
    • "Q": recoverable up to 25%
    • "H": recoverable up to 30%

Sample body payloads:

    "data": "String",
    "ec_level": "H"

    "data": [98,121,116,101,115],
    "ec_level": "L"

POST https://zylalabs.com/api/2068/qr+code/1852/generate+qr+code

Generate QR Code - Endpoint Features
Object Description
Request Body [Required] Json
Test Endpoint


                                                                                                                                                                                                                            <?xml version="1.0" standalone="yes"?><svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="232" height="232" viewBox="0 0 232 232" shape-rendering="crispEdges"><rect x="0" y="0" width="232" height="232" fill="#fff"/><path fill="#000" d="M32 32h8v8H32V32M40 32h8v8H40V32M48 32h8v8H48V32M56 32h8v8H56V32M64 32h8v8H64V32M72 32h8v8H72V32M80 32h8v8H80V32M104 32h8v8H104V32M144 32h8v8H144V32M152 32h8v8H152V32M160 32h8v8H160V32M168 32h8v8H168V32M176 32h8v8H176V32M184 32h8v8H184V32M192 32h8v8H192V32M32 40h8v8H32V40M80 40h8v8H80V40M104 40h8v8H104V40M112 40h8v8H112V40M120 40h8v8H120V40M128 40h8v8H128V40M144 40h8v8H144V40M192 40h8v8H192V40M32 48h8v8H32V48M48 48h8v8H48V48M56 48h8v8H56V48M64 48h8v8H64V48M80 48h8v8H80V48M120 48h8v8H120V48M128 48h8v8H128V48M144 48h8v8H144V48M160 48h8v8H160V48M168 48h8v8H168V48M176 48h8v8H176V48M192 48h8v8H192V48M32 56h8v8H32V56M48 56h8v8H48V56M56 56h8v8H56V56M64 56h8v8H64V56M80 56h8v8H80V56M104 56h8v8H104V56M112 56h8v8H112V56M144 56h8v8H144V56M160 56h8v8H160V56M168 56h8v8H168V56M176 56h8v8H176V56M192 56h8v8H192V56M32 64h8v8H32V64M48 64h8v8H48V64M56 64h8v8H56V64M64 64h8v8H64V64M80 64h8v8H80V64M96 64h8v8H96V64M112 64h8v8H112V64M128 64h8v8H128V64M144 64h8v8H144V64M160 64h8v8H160V64M168 64h8v8H168V64M176 64h8v8H176V64M192 64h8v8H192V64M32 72h8v8H32V72M80 72h8v8H80V72M104 72h8v8H104V72M112 72h8v8H112V72M128 72h8v8H128V72M144 72h8v8H144V72M192 72h8v8H192V72M32 80h8v8H32V80M40 80h8v8H40V80M48 80h8v8H48V80M56 80h8v8H56V80M64 80h8v8H64V80M72 80h8v8H72V80M80 80h8v8H80V80M96 80h8v8H96V80M112 80h8v8H112V80M128 80h8v8H128V80M144 80h8v8H144V80M152 80h8v8H152V80M160 80h8v8H160V80M168 80h8v8H168V80M176 80h8v8H176V80M184 80h8v8H184V80M192 80h8v8H192V80M96 88h8v8H96V88M112 88h8v8H112V88M120 88h8v8H120V88M128 88h8v8H128V88M48 96h8v8H48V96M56 96h8v8H56V96M80 96h8v8H80V96M88 96h8v8H88V96M96 96h8v8H96V96M104 96h8v8H104V96M136 96h8v8H136V96M144 96h8v8H144V96M160 96h8v8H160V96M32 104h8v8H32V104M48 104h8v8H48V104M72 104h8v8H72V104M88 104h8v8H88V104M96 104h8v8H96V104M104 104h8v8H104V104M128 104h8v8H128V104M144 104h8v8H144V104M168 104h8v8H168V104M40 112h8v8H40V112M56 112h8v8H56V112M64 112h8v8H64V112M80 112h8v8H80V112M104 112h8v8H104V112M120 112h8v8H120V112M128 112h8v8H128V112M144 112h8v8H144V112M168 112h8v8H168V112M176 112h8v8H176V112M192 112h8v8H192V112M32 120h8v8H32V120M88 120h8v8H88V120M96 120h8v8H96V120M112 120h8v8H112V120M128 120h8v8H128V120M144 120h8v8H144V120M152 120h8v8H152V120M160 120h8v8H160V120M168 120h8v8H168V120M176 120h8v8H176V120M184 120h8v8H184V120M32 128h8v8H32V128M48 128h8v8H48V128M64 128h8v8H64V128M80 128h8v8H80V128M88 128h8v8H88V128M96 128h8v8H96V128M104 128h8v8H104V128M112 128h8v8H112V128M136 128h8v8H136V128M144 128h8v8H144V128M152 128h8v8H152V128M176 128h8v8H176V128M96 136h8v8H96V136M104 136h8v8H104V136M112 136h8v8H112V136M120 136h8v8H120V136M128 136h8v8H128V136M144 136h8v8H144V136M168 136h8v8H168V136M192 136h8v8H192V136M32 144h8v8H32V144M40 144h8v8H40V144M48 144h8v8H48V144M56 144h8v8H56V144M64 144h8v8H64V144M72 144h8v8H72V144M80 144h8v8H80V144M96 144h8v8H96V144M104 144h8v8H104V144M112 144h8v8H112V144M128 144h8v8H128V144M144 144h8v8H144V144M152 144h8v8H152V144M168 144h8v8H168V144M32 152h8v8H32V152M80 152h8v8H80V152M104 152h8v8H104V152M112 152h8v8H112V152M136 152h8v8H136V152M144 152h8v8H144V152M152 152h8v8H152V152M160 152h8v8H160V152M176 152h8v8H176V152M32 160h8v8H32V160M48 160h8v8H48V160M56 160h8v8H56V160M64 160h8v8H64V160M80 160h8v8H80V160M120 160h8v8H120V160M128 160h8v8H128V160M136 160h8v8H136V160M152 160h8v8H152V160M160 160h8v8H160V160M192 160h8v8H192V160M32 168h8v8H32V168M48 168h8v8H48V168M56 168h8v8H56V168M64 168h8v8H64V168M80 168h8v8H80V168M96 168h8v8H96V168M104 168h8v8H104V168M112 168h8v8H112V168M128 168h8v8H128V168M136 168h8v8H136V168M144 168h8v8H144V168M152 168h8v8H152V168M160 168h8v8H160V168M168 168h8v8H168V168M176 168h8v8H176V168M184 168h8v8H184V168M32 176h8v8H32V176M48 176h8v8H48V176M56 176h8v8H56V176M64 176h8v8H64V176M80 176h8v8H80V176M96 176h8v8H96V176M112 176h8v8H112V176M120 176h8v8H120V176M136 176h8v8H136V176M152 176h8v8H152V176M32 184h8v8H32V184M80 184h8v8H80V184M104 184h8v8H104V184M112 184h8v8H112V184M128 184h8v8H128V184M136 184h8v8H136V184M152 184h8v8H152V184M176 184h8v8H176V184M184 184h8v8H184V184M192 184h8v8H192V184M32 192h8v8H32V192M40 192h8v8H40V192M48 192h8v8H48V192M56 192h8v8H56V192M64 192h8v8H64V192M72 192h8v8H72V192M80 192h8v8H80V192M104 192h8v8H104V192M112 192h8v8H112V192M120 192h8v8H120V192M128 192h8v8H128V192M144 192h8v8H144V192M160 192h8v8H160V192M184 192h8v8H184V192"/></svg>

Generate QR Code - CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/2068/qr+code/1852/generate+qr+code' --header 'Authorization: Bearer YOUR_API_KEY' 


API Access Key & Authentication

After signing up, every developer is assigned a personal API access key, a unique combination of letters and digits provided to access to our API endpoint. To authenticate with the QR Code REST API, simply include your bearer token in the Authorization header.


Header Description
Authorization [Required] Should be Bearer access_key. See "Your API Access Key" above when you are subscribed.

Simple Transparent Pricing

No long term commitments. One click upgrade/downgrade or cancellation. No questions asked.

🚀 Enterprise
Starts at $10,000/Year

  • Custom Volume
  • Dedicated account manager
  • Service-level agreement (SLA)

The QR Code API enables users to generate customized QR codes with any data and error correction level they require. It provides a convenient way to create dynamic QR codes for various applications.

The API accepts a JSON object as input. The specific structure and parameters of the payload can be found in the documentation of the individual endpoints.

The API returns an SVG image as output. This image contains the generated QR code based on the provided data and specifications.

The API is commonly used for creating dynamic QR codes on demand. It is particularly useful for generating QR codes for contract or invoice links, personalized promotions targeted to specific users, or even for printing serial numbers on products.

QR codes have limitations on the amount of data they can store. The API automatically attempts to encode the data in the most efficient way possible. The maximum limits for different data types are as follows: Numeric only: 7089 digits Alphanumeric: 4296 characters Binary: 2953 bytes

Zyla API Hub is, in other words, an API MarketPlace. An all-in-one solution for your developing needs. You will be accessing our extended list of APIs with only your user. Also, you won't need to worry about storing API keys, only one API key for all our products is needed.

Prices are listed in USD. We accept all major debit and credit cards. Our payment system uses the latest security technology and is powered by Stripe, one of the world’s most reliable payment companies. If you have any trouble with paying by card, just contact us at [email protected]

Sometimes depending on the bank's fraud protection settings, a bank will decline the validation charge we make when we attempt to be sure a card is valid. We recommend first contacting your bank to see if they are blocking our charges. If more help is needed, please contact [email protected] and our team will investigate further

Prices are based on a recurring monthly subscription depending on the plan selected — plus overage fees applied when a developer exceeds a plan’s quota limits. In this example, you'll see the base plan amount as well as a quota limit of API requests. Be sure to notice the overage fee because you will be charged for each additional request.

Zyla API Hub works on a recurring monthly subscription system. Your billing cycle will start the day you purchase one of the paid plans, and it will renew the same day of the next month. So be aware to cancel your subscription beforehand if you want to avoid future charges.

Just go to the pricing page of that API and select the plan that you want to upgrade to. You will only be charged the full amount of that plan, but you will be enjoying the features that the plan offers right away.

Yes, absolutely. If you want to cancel your plan, simply go to your account and cancel on the Billing page. Upgrades, downgrades, and cancellations are immediate.

You can contact us through our chat channel to receive immediate assistance. We are always online from 9 am to 6 pm (GMT+1). If you reach us after that time, we will be in contact when we are back. Also you can contact us via email to [email protected]

 Service Level
 Response Time
David Skrundz

Useful links: