Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/VisualGraphxLLC/API-HUB/llms.txt

Use this file to discover all available pages before exploring further.

n8n-nodes-onprintshop is a custom n8n community node that provides a GraphQL client for the OnPrintShop API. It handles OAuth2 token management automatically and exposes every supported OPS query and mutation as a selectable operation inside the n8n node editor. In API-HUB, this node is the sole mechanism by which n8n pushes products, prices, and configuration changes to OPS storefronts. The node is written in TypeScript, versioned at 1.0.0, and synced to the official OPS Postman collection as of 2026-04-23.

Installation

OAuth2 credentials

Each OPS storefront requires its own credential entry in n8n. Create one credential per storefront — do not share a single credential across customers with different OPS instances.
1

Get the OAuth client details from OPS

Log into your OPS admin panel, go to Settings → API, and create an OAuth client. Copy the Client ID and Client Secret.
2

Create a credential in n8n

In n8n, go to Credentials → New → OnPrintShop API. Fill in all four required fields:
FieldDescriptionExample
Client IDOAuth2 Client ID from OPSabc123
Client SecretOAuth2 Client Secret from OPSsecret_xyz
Base URLYour OPS instance base URLhttps://vg.onprintshop.com
Token URLOAuth2 token endpointhttps://api.onprintshop.com/oauth/token
The node sends GraphQL requests to {baseUrl}/api/. The token URL defaults to the shared OPS OAuth endpoint but can be overridden to your instance’s own token endpoint if required.
3

Name the credential to match the workflow

API-HUB’s workflow JSONs reference credential names explicitly. Use:
  • VG OnPrintShop — for the Visual Graphics OPS inbound pull workflows
  • OPS Storefront — for the ops-push.json outbound workflow
If the name does not match the workflow JSON, n8n will show a blank credential dropdown and you must select it manually after import.

Operations reference

The node groups operations by Resource. Select a resource in the node’s UI, then choose an operation from the dropdown.

Queries (Read)

  • Get — fetch a single customer by ID
  • Get Many — paginated list of customers
  • Get User Basket (Test) — retrieve the basket for a specific user; marked Test as this endpoint may be disabled on production OPS instances
  • Get Many — paginated list of addresses for a customer
  • Get — fetch a single order by ID
  • Get Many — paginated list of orders
  • Get Shipments — retrieve shipments attached to an order
  • Get Many — line-item details for a given order
  • Get Many — paginated shipments with full carrier and tracking detail
  • Get Simple — lightweight product record (name, SKU, status)
  • Get Detailed — full product record including options, prices, and images
  • Get Many Simple — paginated list of simple product records
  • Get Many Detailed — paginated list of full product records (products_details query with fetchAllPages)
  • Get Master Options — option templates applicable to a product
  • Get Master Option Rules — constraint rules for master options
  • Get Master Option Prices — pricing attached to master options
  • Get Categories — categories the product is assigned to
  • Get FAQs — FAQ entries for a product page
  • Get Stocks — current inventory levels per variant (productStocks query, requires product_id)
  • Get Tags / Groups / Formulas / Ranges — catalog helper data used by the pricing engine
  • Get — single order status by ID
  • Get Many — full status list
  • Get Store Details — store configuration and metadata
  • Get Countries — countries enabled on the storefront
  • Get Store Markup — markup rules configured in OPS
  • Get Payment Terms — available payment terms
  • Get Store Address — physical address registered on the store
  • Get Staging Summaries — staging environment summaries (if applicable)
  • Get Many — paginated list of store departments
  • Batch: Get Many — production batch records
  • Quote: Get Many — quote list
  • Quote Product: Get Many — products within a quote

Mutations (Write)

These mutations affect live orders and shipments:
  • Update Order Status — transition an order to a new status
  • Set Order Product — add or update a product line item on an order
  • Set Batch — create or update a production batch
  • Set Shipment — record shipment details against an order
Used by ops-push.json to create and update products on OPS storefronts:
  • Set Product — create or update a product shell (name, description, status, category)
  • Set Product Price — create or update price bands (quantity range + unit price)
  • Set Product Size — configure size presets for print products
  • Set Category — create or update a product category
  • Set Product Pages — configure multi-page product settings
  • Assign Options — assign option groups to a product
  • Set Product Option Rules — define constraints between option selections
  • Set Option Group — create or update an option group
  • Set Custom Formula — configure a pricing formula for formula-based print products
  • Set Master Option — create or update a master option record
  • Set Master Option Tags / Attributes / Ranges / Prices — sub-operations for the master option object graph
  • Set Customer — create or update a customer record
  • Notify User — send a notification to a customer
  • Set Customer Address (Staging) — create or update a customer address (staging environment)
  • Set Store Address — update the physical address on a store
  • Set Department — create or update a department
  • Set Store — update store-level configuration
  • Set Store Markup — apply markup rules at the store level
  • Update Product Stock — update inventory levels for a product variant
These operations exist in the official OPS Postman collection but may be disabled on production instances:
  • Set Quote — create or update a quote
  • Set Order (Staging) — create an order in the staging environment
  • Modify Order Product (Beta) — adjust line items on an existing order
  • Set User Basket (Test) — manipulate a user’s basket
  • Additional option beta mutations
Operations labeled Staging, Beta, or Test are included for completeness but may return 404 or 501 on your OPS instance. Check your OPS admin portal or contact your OPS account manager before building workflows that depend on these operations.

Compatibility

RequirementMinimum version
n8nv1.0.0+
Node.js18+
n8n-workflow peer dependencyany (*)

How the node is used in API-HUB workflows

vg-ops-pull.json

Uses getManyProductCategory and getManyProductDetailed (read operations) to pull the full Visual Graphics OPS catalog into the hub’s ingest pipeline.

ops-push.json

Uses setProduct and setProductPrice (write operations) to create and update products on customer OPS storefronts after markup is applied by FastAPI.

ops-master-options-pull.json

Uses getManyMasterOptions (read, paginated) to synchronize the canonical option vocabulary from OPS into the hub’s master_options table.

Future workflows

setProductStock, setProductSize, and additional catalog mutations are available in the node for v2 workflows covering per-product inventory and print size sync.

Build docs developers (and LLMs) love