Wi-Fi Wireless Network QR Code Generation API Integration Guide

Learn how to integrate the Wi-Fi Wireless Network QR Code Generation API with documented request parameters, response fields, error handling, and practical examples.

Try the live demoView API details →

Wi-Fi Wireless Network QR Code Generation API Integration Guide

The Wi-Fi Wireless Network QR Code Generation API from GuGuData helps developers generate a Wi-Fi QR code image for wireless network onboarding.

Start here: Try the live demo or view the current API details.

API details

Item Value
API name Wi-Fi Wireless Network QR Code Generation
Category QR Code and Barcode APIs
Method POST
Endpoint https://api.gugudata.io/v1/wifi-qrcode
Content type application/json
Demo endpoint https://api.gugudata.io/v1/wifi-qrcode/demo
Detail page https://gugudata.io/details/wifiqrcode
OpenAPI JSON https://gugudata.io/assets/openapi/gugudata.openapi.3.1.json

When to use this API

  • Generate Wi-Fi onboarding QR codes for offices and venues.
  • Reduce manual SSID and password entry.
  • Create printable network access cards.

Request parameters

This endpoint accepts parameters through the query string plus request body. Keep appkey out of client-side public code and send it only from trusted server-side environments.

Parameter Type Required Default Description
appkey string Yes YOUR_APPKEY Application key used for request authentication. Supply the value as a query parameter, form field, or multipart field according to the request content type.
ssid string Yes - Wi-Fi network name encoded into the QR code.
password string No Empty Network password, preserved exactly.
authentication string No nopass Case-insensitive WPA, WEP, or nopass. Missing or empty means an open network.
isHiddenSSID boolean No false Whether the network is hidden.
isShowWifiIcon boolean No false Add a Wi-Fi symbol below the code without covering it.
size integer No 500 Square PNG size from 64 to 2048 pixels. Dense content may require a larger size.

Names and passwords are preserved exactly, including surrounding whitespace. Combined text input is limited to 32,768 UTF-8 bytes; actual QR capacity depends on content and size. Content that cannot fit at a scannable size returns 400, without truncation. The legacy WPA2-EAP token is accepted, but the API does not provide enterprise identity or EAP method settings.

Example request

curl -X POST "https://api.gugudata.io/v1/wifi-qrcode?appkey=YOUR_APPKEY" \
  -H "Content-Type: application/json" \
  -d '
{
  "ssid": "Office WiFi",
  "password": "network-password",
  "authentication": "WPA",
  "isHiddenSSID": false,
  "isShowWifiIcon": true,
  "size": 500
}
'

Response fields

The JSON response contains the generated image link, not binary image content.

Field Type Required Description
data.url string Yes Public HTTPS PNG download URL. Save the image for your workflow; permanent hosting is not guaranteed.

Response example

{
  "dataStatus": {
    "statusCode": 200,
    "statusDescription": "successfully",
    "responseDateTime": "2026-04-10T00:00:00Z",
    "dataTotalCount": 1
  },
  "data": {
    "url": "https://storage.gugudata.io/barcode/example.png"
  }
}

This example illustrates the response shape; it is not a live generated file. The image contains network credentials. Anyone with the public image link can retrieve and decode them. Share it only with intended users. This is not a private file service or a guarantee that the network is reachable. Scanning support varies by device. Preserve the image proportions and white space when printing.

HTTP status codes

Use the HTTP status code for transport-level handling. If the response body contains dataStatus.statusCode, treat it as an application-level status field in the JSON payload.

HTTP status Meaning Recommended handling
200 Request processed successfully. Parse the documented response body for the endpoint result.
400 Invalid request parameters or request format. Check required fields, data types, and request body format.
401 Missing or unknown application key. Send a valid appkey with the request.
403 The application key is recognized but access is not allowed. Check subscription, trial state, and endpoint access.
429 Request rate or trial usage limit exceeded. Reduce concurrency or retry after the limit window resets.
500 Internal service error. Retry later or contact support if the error persists.
503 Generation or storage unavailable; business code 500. Retry later.

Implementation notes

  • Validate required parameters before sending the request so 400 responses are easier to diagnose.
  • Keep server-side retries conservative for 429, 500, and 503 responses.
  • Do not log passwords or full request bodies.
  • Log the HTTP status code and dataStatus.statusDescription together for easier debugging.
  • Use the demo endpoint for a quick connectivity check, then switch to the authenticated endpoint for production data.

FAQ

Where is the official API detail page?

The official detail page is https://gugudata.io/details/wifiqrcode. It is the best place to review the latest public endpoint information before publishing or integrating.

Should I handle dataStatus.statusCode as the HTTP status code?

No. Use the HTTP status code for request-level behavior such as authentication, permission, rate limiting, and server errors. Use dataStatus.statusCode only as the response body status field when it is present.

Can I use the demo endpoint in production?

No. The demo endpoint is for quick testing and examples. Use the authenticated endpoint with your appkey for production workflows.

The Demo generates a real code for the public sample GuguData, password 12345678, authentication WPA, size 200, with the icon enabled. Successful results are cached for 15 minutes. X-GuGuData-Demo-Mode reports live or cached, and X-GuGuData-Generated-At reports generation time. Failed results are not cached. The sample does not grant access to an actual network.

For more developer APIs, visit GuGuData.