Skip to main content

API Endpoints

Complete reference for all REST API endpoints across PROIGN modules.

Base URLs

All modules use path-based routing through the gateway. Replace [tenant] with your tenant slug:

ModuleBase URL
QR Codeshttps://app.proign.com/[tenant]/qr/api
Fulfillmenthttps://app.proign.com/[tenant]/fulfillment/api
Rewardshttps://app.proign.com/[tenant]/rewards/api
Signhttps://app.proign.com/[tenant]/sign/api
Support & Helpdeskhttps://app.proign.com/[tenant]/support/api
Inventoryhttps://app.proign.com/[tenant]/inventory/api
Campaignhttps://app.proign.com/[tenant]/campaign/api
Analyticshttps://app.proign.com/[tenant]/analytics/api
Eventshttps://app.proign.com/[tenant]/events/api
Taxhttps://app.proign.com/[tenant]/tax/api
Upgradehttps://app.proign.com/[tenant]/upgrade/api
Aftersalehttps://app.proign.com/[tenant]/aftersale/api
SDShttps://app.proign.com/[tenant]/sds/api
Cataloghttps://app.proign.com/[tenant]/catalog/api
MEShttps://app.proign.com/[tenant]/mes/api
Documentationhttps://app.proign.com/[tenant]/docs/api

QR Codes Module

QR Code Management

GET    /api/[tenant]/qr                    # List QR codes
POST   /api/[tenant]/qr                    # Create QR code
GET    /api/[tenant]/qr/[id]               # Get QR details
PATCH  /api/[tenant]/qr/[id]               # Update QR code
DELETE /api/[tenant]/qr/[id]               # Delete QR code
PATCH  /api/[tenant]/qr/[id]/destination   # Update destination URL
GET    /api/[tenant]/qr/[id]/download      # Download as PNG/SVG/PDF
POST   /api/[tenant]/qr/preview            # Preview without saving

QR Analytics

GET    /api/[tenant]/qr/[id]/analytics     # Single QR analytics
GET    /api/[tenant]/analytics             # Dashboard overview
GET    /api/[tenant]/analytics/realtime    # Real-time scan data
GET    /api/[tenant]/analytics/export      # Export as CSV/JSON

Templates, Folders & Barcodes

# Templates
GET    /api/[tenant]/templates             # List templates
POST   /api/[tenant]/templates             # Create template
PATCH  /api/[tenant]/templates/[id]        # Update template
DELETE /api/[tenant]/templates/[id]        # Delete template

# Folders
GET    /api/[tenant]/folders               # List folders
POST   /api/[tenant]/folders               # Create folder
PATCH  /api/[tenant]/folders/[id]          # Update folder
DELETE /api/[tenant]/folders/[id]          # Delete folder

# Barcodes
GET    /api/[tenant]/barcode               # List barcodes
POST   /api/[tenant]/barcode               # Create barcode
GET    /api/[tenant]/barcode/[id]          # Get barcode
DELETE /api/[tenant]/barcode/[id]          # Delete barcode

QR Public API (v1)

# Requires: Authorization: Bearer prgn_xxxxx
GET    /api/v1/qr                          # List QR codes
POST   /api/v1/qr                          # Create QR code
GET    /api/v1/qr/[id]                     # Get QR details
PATCH  /api/v1/qr/[id]                     # Update QR code
DELETE /api/v1/qr/[id]                     # Delete QR code
GET    /api/v1/qr/[id]/analytics           # Get analytics

Fulfillment Module

Authentication

POST   /api/[tenant]/auth/login            # Device login
POST   /api/[tenant]/auth/logout           # Device logout

Orders

GET    /api/[tenant]/orders                # List orders with filters
GET    /api/[tenant]/orders/[id]           # Get order details
POST   /api/[tenant]/orders/[id]/operations # Unified operation endpoint

Labels & Settings

GET    /api/[tenant]/labels/[id]           # Download shipping label
GET    /api/[tenant]/settings/device       # Get device settings
PUT    /api/[tenant]/settings/device       # Update device settings

Webhooks

POST   /api/[tenant]/webhooks/shipstation  # ShipStation webhooks
POST   /api/[tenant]/webhooks/shopify      # Shopify order webhooks

Rewards Module

Authentication

POST   /api/[tenant]/auth/login            # Dealer login
POST   /api/[tenant]/auth/logout           # Logout

Profile & Points

GET    /api/[tenant]/profile               # Get dealer profile
PUT    /api/[tenant]/profile               # Update profile
GET    /api/[tenant]/points                # Get points balance

Receipts & Products

GET    /api/[tenant]/receipts              # List submitted receipts
POST   /api/[tenant]/receipts              # Submit receipt for points
GET    /api/[tenant]/products              # List redemption catalog
GET    /api/[tenant]/products/[id]         # Get product details

Cart & Orders

GET    /api/[tenant]/cart                  # Get shopping cart
POST   /api/[tenant]/cart                  # Add item to cart
PUT    /api/[tenant]/cart                  # Update cart item
DELETE /api/[tenant]/cart                  # Remove from cart
POST   /api/[tenant]/cart/checkout         # Place redemption order
GET    /api/[tenant]/orders                # List redemption orders

Registration & Files

GET    /api/[tenant]/register-request      # Check registration status
POST   /api/[tenant]/register-request      # Submit registration
POST   /api/[tenant]/files/upload          # Upload receipt image
GET    /api/[tenant]/files/[id]            # Download file
GET    /api/[tenant]/tax/w9                # Get W-9 status
POST   /api/[tenant]/tax/w9                # Submit W-9 form

Sign Module

Documents

GET    /api/[tenant]/documents             # List documents
POST   /api/[tenant]/documents             # Create document
GET    /api/[tenant]/documents/[id]        # Get document details
DELETE /api/[tenant]/documents/[id]        # Delete document
POST   /api/[tenant]/documents/[id]/send   # Send for signature
GET    /api/[tenant]/documents/[id]/download  # Download signed PDF

Signers & Fields

GET    /api/[tenant]/documents/[id]/signers      # List signers
POST   /api/[tenant]/documents/[id]/signers      # Add signer
DELETE /api/[tenant]/documents/[id]/signers/[sid]  # Remove signer
GET    /api/[tenant]/documents/[id]/fields       # List fields
POST   /api/[tenant]/documents/[id]/fields       # Add field
DELETE /api/[tenant]/documents/[id]/fields/[fid] # Remove field

Templates

GET    /api/[tenant]/templates             # List templates
POST   /api/[tenant]/templates             # Create template
PUT    /api/[tenant]/templates/[id]        # Update template
DELETE /api/[tenant]/templates/[id]        # Delete template

Public Signing (Token-based)

# These endpoints use signing token, not tenant auth
GET    /api/sign/[token]                   # Get document for signing
POST   /api/sign/[token]                   # Submit signature
GET    /api/sign/[token]/download          # Download signed PDF
GET    /api/sign/[token]/audit             # Get audit trail

Support & Helpdesk Module

The Support and Helpdesk modules are unified. Public endpoints are for customer-facing portals, authenticated endpoints are for agent helpdesk operations.

Public Endpoints (No Auth)

POST   /api/tenants/[tenant]/support/public/tickets        # Create ticket
POST   /api/tenants/[tenant]/support/public/tickets/lookup  # Lookup by number+token
GET    /api/tenants/[tenant]/support/public/tickets/[num]/messages  # Get messages
POST   /api/tenants/[tenant]/support/public/tickets/[num]/messages  # Reply
POST   /api/tenants/[tenant]/support/public/attachments     # Upload attachment
GET    /api/tenants/[tenant]/support/public/categories      # List categories

Authenticated (Agent/Admin)

# Tickets
GET    /api/tenants/[tenant]/support/tickets               # List tickets
GET    /api/tenants/[tenant]/support/tickets/[id]          # Get ticket
PATCH  /api/tenants/[tenant]/support/tickets/[id]          # Update ticket
GET    /api/tenants/[tenant]/support/tickets/[id]/messages # List messages
POST   /api/tenants/[tenant]/support/tickets/[id]/messages # Add message

# Categories
GET    /api/tenants/[tenant]/support/categories            # List categories
POST   /api/tenants/[tenant]/support/categories            # Create category
PATCH  /api/tenants/[tenant]/support/categories/[id]       # Update category
DELETE /api/tenants/[tenant]/support/categories/[id]       # Delete category

# Attachments
POST   /api/tenants/[tenant]/support/attachments           # Upload
GET    /api/tenants/[tenant]/support/attachments/[id]      # Download
DELETE /api/tenants/[tenant]/support/attachments/[id]      # Delete

Configuration & AI

# Helpdesk config
GET    /api/tenants/[tenant]/support/helpdesk              # Get config
PUT    /api/tenants/[tenant]/support/helpdesk              # Update config

# Email domain
GET    /api/tenants/[tenant]/support/email-domain          # Get status
POST   /api/tenants/[tenant]/support/email-domain          # Register
PUT    /api/tenants/[tenant]/support/email-domain          # Verify
DELETE /api/tenants/[tenant]/support/email-domain          # Remove

# AI features
POST   /api/tenants/[tenant]/support/ai/triage             # AI triage
PUT    /api/tenants/[tenant]/support/ai/triage             # Suggest response

# Global
GET    /api/support/my-tickets                              # User's tickets

Inventory Module

# Stock
GET    /api/[tenant]/stock                 # List stock by location
POST   /api/[tenant]/stock                 # Adjust stock quantity

# Locations
GET    /api/[tenant]/locations             # List locations
POST   /api/[tenant]/locations             # Create location (admin)

# Transfers
GET    /api/[tenant]/transfers             # List transfer orders
POST   /api/[tenant]/transfers             # Create transfer
PATCH  /api/[tenant]/transfers             # Update transfer status

# Movements & Alerts
GET    /api/[tenant]/movements             # Movement history
GET    /api/[tenant]/alerts                # List alerts
POST   /api/[tenant]/alerts                # Create alert
PATCH  /api/[tenant]/alerts                # Acknowledge/resolve alert

Campaign Module

Lists & Contacts

# Lists
GET    /api/[tenant]/lists                 # List all lists
POST   /api/[tenant]/lists                 # Create list
GET    /api/[tenant]/lists/[id]            # Get list details
PUT    /api/[tenant]/lists/[id]            # Update list
DELETE /api/[tenant]/lists/[id]            # Delete list

# Contacts
GET    /api/[tenant]/contacts              # List contacts
POST   /api/[tenant]/contacts              # Create contact
PUT    /api/[tenant]/contacts/[id]         # Update contact
DELETE /api/[tenant]/contacts/[id]         # Delete contact
POST   /api/[tenant]/contacts/import       # Bulk import

Segments & Campaigns

# Segments
GET    /api/[tenant]/segments              # List segments
POST   /api/[tenant]/segments              # Create segment
PUT    /api/[tenant]/segments/[id]         # Update segment

# Campaigns
GET    /api/[tenant]/campaigns             # List campaigns
POST   /api/[tenant]/campaigns             # Create campaign
GET    /api/[tenant]/campaigns/[id]        # Get campaign
POST   /api/[tenant]/campaigns/[id]/send   # Send campaign

Templates & Flows

# Templates (Email & SMS)
GET    /api/[tenant]/templates/email       # List email templates
POST   /api/[tenant]/templates/email       # Create email template
GET    /api/[tenant]/templates/sms         # List SMS templates
POST   /api/[tenant]/templates/sms         # Create SMS template

# Flows
GET    /api/[tenant]/flows                 # List automation flows
POST   /api/[tenant]/flows                 # Create flow
PUT    /api/[tenant]/flows/[id]            # Update flow

Surveys & Analytics

# Surveys
GET    /api/[tenant]/surveys               # List surveys
POST   /api/[tenant]/surveys               # Create survey
GET    /api/[tenant]/surveys/[id]/responses  # Get responses

# Analytics
GET    /api/[tenant]/analytics             # Dashboard analytics
GET    /api/[tenant]/campaigns/[id]/stats  # Campaign statistics

Events Module

GET    /api/[tenant]/events                # List events with filters
POST   /api/[tenant]/events                # Publish event (authenticated)
GET    /api/[tenant]/subscriptions         # List subscriptions
POST   /api/[tenant]/subscriptions         # Create subscription (admin)
POST   /api/p/[tenant]/events              # Publish event (public, rate-limited)

Analytics Module

# Dashboards
GET    /api/[tenant]/dashboards            # List dashboards
POST   /api/[tenant]/dashboards            # Create dashboard (admin)

# Metrics
GET    /api/[tenant]/metrics               # Get metrics with filters
POST   /api/[tenant]/metrics               # Record a metric

# Reports & Customers
GET    /api/[tenant]/reports               # List reports
POST   /api/[tenant]/reports               # Create/generate report
GET    /api/[tenant]/customers             # Get customer profiles
POST   /api/[tenant]/customers             # Upsert customer profile

Tax Module

# Dashboard & Liability
GET    /api/[tenant]/dashboard             # Dashboard summary
GET    /api/[tenant]/liability             # Tax liability by state

# Transactions
GET    /api/[tenant]/transactions          # List transactions
POST   /api/[tenant]/transactions/sync     # Sync to TaxJar
POST   /api/[tenant]/transactions/[id]/refund  # Create refund
PUT    /api/[tenant]/transactions/[id]/amend   # Amend transaction

# Filings
GET    /api/[tenant]/filings               # Tax filing history

# Connections
GET    /api/[tenant]/connections/taxjar    # TaxJar status
POST   /api/[tenant]/connections/taxjar    # Save TaxJar credentials
DELETE /api/[tenant]/connections/taxjar    # Remove TaxJar
GET    /api/[tenant]/connections/shopify   # Shopify status
POST   /api/[tenant]/connections/shopify   # Save Shopify credentials
DELETE /api/[tenant]/connections/shopify   # Remove Shopify

Upgrade Module

# Auth
POST   /api/[tenant]/auth/register         # Customer registration
POST   /api/[tenant]/auth/login            # Login
POST   /api/[tenant]/auth/logout           # Logout
GET    /api/[tenant]/auth/me               # Current user

# Submissions
GET    /api/[tenant]/submissions           # List submissions
POST   /api/[tenant]/submissions           # Create submission
GET    /api/[tenant]/submissions/[id]      # Get details
PUT    /api/[tenant]/submissions/[id]      # Update submission
POST   /api/[tenant]/submissions/[id]/inspect  # Inspection
POST   /api/[tenant]/submissions/[id]/receive  # Mark received
POST   /api/[tenant]/submissions/[id]/ship     # Ship kit

# Offers
POST   /api/[tenant]/offers                # Create offer (admin)
POST   /api/[tenant]/offers/[id]           # Accept/decline (customer)

# Photos & Profile
POST   /api/[tenant]/photos                # Upload photo
GET    /api/[tenant]/photos/[id]           # Get photo
GET    /api/[tenant]/profile               # Get profile
PUT    /api/[tenant]/profile               # Update profile

Aftersale Module

# Auth
POST   /api/[tenant]/auth/login            # Customer login
POST   /api/[tenant]/auth/register         # Customer registration
GET    /api/[tenant]/auth/me               # Current user
POST   /api/[tenant]/auth/logout           # Logout

# Warranties (public)
POST   /api/p/[tenant]/warranties          # Register warranty

SDS Module

# Formulas
GET    /api/[tenant]/formulas              # List formulas
POST   /api/[tenant]/formulas              # Create formula
GET    /api/[tenant]/formulas/import       # Get import template
POST   /api/[tenant]/formulas/import       # Bulk import

# Formula Actions
GET    /api/[tenant]/formulas/[id]/detect-allergens  # Get allergens
POST   /api/[tenant]/formulas/[id]/detect-allergens  # Run detection
GET    /api/[tenant]/formulas/[id]/certificate       # Get certificate
POST   /api/[tenant]/formulas/[id]/certificate       # Generate certificate
GET    /api/[tenant]/formulas/[id]/sds               # Get SDS
POST   /api/[tenant]/formulas/[id]/sds               # Generate SDS

# Ingredients
GET    /api/[tenant]/ingredients           # List ingredients
POST   /api/[tenant]/ingredients           # Create ingredient
GET    /api/[tenant]/ingredients/search    # Search PubChem

# Allergens
GET    /api/[tenant]/allergens             # List EU allergens
POST   /api/[tenant]/allergens/detect      # Detect in text

Catalog Module

# Products
GET    /api/[tenant]/products                   # List products
POST   /api/[tenant]/products                   # Create product
GET    /api/[tenant]/products/[id]              # Get product
PUT    /api/[tenant]/products/[id]              # Update product
DELETE /api/[tenant]/products/[id]              # Delete product

# Categories
GET    /api/[tenant]/categories                 # List categories
POST   /api/[tenant]/categories                 # Create category
PUT    /api/[tenant]/categories/[id]            # Update category

# Catalog Generation
POST   /api/[tenant]/catalogs/generate          # Generate PDF catalog
GET    /api/[tenant]/catalogs                   # List generated catalogs
GET    /api/[tenant]/catalogs/[id]/download     # Download catalog PDF

# Shopify Sync
POST   /api/[tenant]/shopify/sync              # Trigger product sync
GET    /api/[tenant]/shopify/sync/status        # Get sync status

# Languages
GET    /api/[tenant]/languages                  # List languages
POST   /api/[tenant]/products/[id]/translations # Add translation

MES Module

# Machines
GET    /api/[tenant]/machines                   # List machines
POST   /api/[tenant]/machines                   # Register machine
GET    /api/[tenant]/machines/[id]              # Get machine details
PUT    /api/[tenant]/machines/[id]              # Update machine
GET    /api/[tenant]/machines/[id]/status       # Get live status (MTConnect)

# Production
GET    /api/[tenant]/production/runs            # List production runs
POST   /api/[tenant]/production/runs            # Start production run
PUT    /api/[tenant]/production/runs/[id]       # Update run
GET    /api/[tenant]/production/runs/[id]/parts # Get parts produced

# OEE Reporting
GET    /api/[tenant]/oee                        # Get OEE metrics
GET    /api/[tenant]/oee/by-machine             # OEE per machine
GET    /api/[tenant]/oee/by-shift               # OEE per shift

# Alarms
GET    /api/[tenant]/alarms                     # List alarms
GET    /api/[tenant]/alarms/active              # Get active alarms
PUT    /api/[tenant]/alarms/[id]/acknowledge    # Acknowledge alarm

# Shifts
GET    /api/[tenant]/shifts                     # List shift configurations
POST   /api/[tenant]/shifts                     # Create shift
GET    /api/[tenant]/shifts/[id]/report         # Get shift report

Documentation Module

# Documents
GET    /api/[tenant]/documents                  # List documents
POST   /api/[tenant]/documents                  # Create document
GET    /api/[tenant]/documents/[id]             # Get document
PUT    /api/[tenant]/documents/[id]             # Update document
DELETE /api/[tenant]/documents/[id]             # Delete document

# Categories
GET    /api/[tenant]/doc-categories             # List categories
POST   /api/[tenant]/doc-categories             # Create category

# Search
GET    /api/[tenant]/documents/search           # Full-text search

# Media
POST   /api/[tenant]/documents/[id]/media       # Upload media
GET    /api/[tenant]/documents/[id]/media        # List media

Common Query Parameters

ParameterDescription
pagePage number (default: 1)
limitItems per page (default: 20, max: 100)
sortSort field (e.g., created_at)
orderSort order: asc or desc
searchSearch query string

Response Format

All responses follow a consistent JSON format:

// Success response
{
  "data": { ... },
  "meta": {
    "page": 1,
    "limit": 20,
    "total": 150
  }
}

// Error response
{
  "error": "Error message",
  "code": "ERROR_CODE",
  "details": { ... }
}

Related