All posts

How to Use NuxPrint: Cloud Printing Setup & API Guide

Using Nuxprint API and Windows agent

August 10, 2026 Admin

Printing from a web application can become complicated when the printer is connected to a local computer but the application itself runs in the cloud. NuxPrint is designed to simplify this process by creating a connection between your web application and local USB or network printers.

With NuxPrint, applications can send print jobs through a REST API while the NuxPrint Agent handles communication with printers connected to the local environment. This approach makes it possible to manage printers and print jobs without requiring users to manually download and open every document before printing.

1. Create Your NuxPrint Account

The first step is to create a NuxPrint account. Your account provides access to the NuxPrint dashboard and the credentials required to connect your application to the printing API.

For API integrations, NuxPrint provides an API Key that can be used to authenticate requests. API requests can be authenticated with the X-API-Key header or with a JWT Bearer token.

2. Install the NuxPrint Agent

The NuxPrint Agent acts as the bridge between the cloud and the printers available on a computer.

After installing the Agent, open the application and sign in using your NuxPrint account. Once connected, printers available on that computer can automatically be registered with NuxPrint and become visible from the dashboard and API.

This removes the need to manually configure every printer inside your web application.

3. Check Your Connected Printers

After the Agent is connected, you can view registered devices and printers.

NuxPrint provides API endpoints for retrieving both devices and printers:

http
GET /api/printers
GET /api/devices

To retrieve all printers connected to your NuxPrint account, you can use:

bash
curl https://nuxprint.com/api/printers \
  -H "X-API-Key: YOUR_API_KEY"

The printer response includes information such as the printer name, connection type, status, associated device and a unique externalId.

The externalId is particularly important because it is used as the printerId when creating a print job.

For example, a printer response may look like this:

json
{
  "printers": [
    {
      "_id": "69fd0673...",
      "externalId": "847291",
      "name": "Xprinter XP-DT325B",
      "status": "online",
      "connectionType": "USB",
      "isActive": true
    }
  ]
}

In this example, 847291 is the printer identifier that should be used when sending a print request.

This allows your application to decide exactly where a document should be printed. A restaurant system, for example, could send an order receipt to the cashier printer while sending preparation details to another printer located in the kitchen.

4. Send Your First Print Job

Once the printer is registered, your application can start sending print requests.

A print job is created through the NuxPrint API using the POST /api/print-jobs endpoint. The request specifies the printer, document name, document type, document content and number of copies.

A simplified request looks like this:

bash
curl -X POST https://nuxprint.com/api/print-jobs \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "printerId": "847291",
    "documentName": "invoice.pdf",
    "documentType": "pdf",
    "documentData": "BASE64_DOCUMENT_DATA",
    "copies": 1
  }'

The printerId should contain the printer's externalId retrieved from the /api/printers endpoint.

The documentData field contains the Base64-encoded content of the document. This makes it possible for your backend to generate a document and send it directly to NuxPrint without first creating a publicly accessible download link.

5. Choose the Right Document Type

NuxPrint is not limited to standard PDF printing.

According to the NuxPrint API documentation, print jobs can use document types including PDF, ZPL, EPL, ESC/POS and raw printer data.

This makes the platform suitable for different printing scenarios:

  • PDF — invoices, reports and standard documents
  • ZPL / EPL — label printers
  • ESC/POS — receipt and thermal printers

Because of this flexibility, the same integration can support different printers across different areas of a business.


You can access the documentation and desktop agent via the links below. If you have any questions, feel free to contact us anytime — we'll be happy to help.