Integrate with this merchant site

Merchant-side test target for GurzuVTO's Custom Pull connector โ€” 0 products. Two read-only ways to get the data.

๐Ÿ›๏ธ Storefront

Way 1 โ€” API (URL + key)

Base URLhttp://localhost:4000
EndpointGET /api/catalog?page=N (paginated, 50/page)
AuthAuthorization: Bearer 7d86ca19a7aa30fb4fd7091e34242641cd23324fa611429c56412c914e01dbe3
ImagesGET /img/<file> โ€” public, no token
curl -H "Authorization: Bearer 7d86ca19a7aa30fb4fd7091e34242641cd23324fa611429c56412c914e01dbe3" \
  "http://localhost:4000/api/catalog?page=1"

Way 2 โ€” direct database (read-only)

Connect straight to Postgres and get the catalog from one query โ€” the same product JSON as the API above (same fields + traps). Read-only โ€” cannot write.

postgres://gurzu_readonly:readonly_pw@localhost:5433/merchant_catalog

Clean JSON via the shipped views:

SELECT product FROM catalog_json;            -- one JSON per product
SELECT jsonb_agg(product) FROM catalog_json; -- whole catalog
SELECT * FROM v_variants;                     -- flat rows (real variation_id + stock)

Host depends on where you connect from:

From this machine (psql, pgAdmin desktop, a host-run engine)localhost : 5433 โ† use this
From a separate Docker container172.17.0.1 : 5433 (localhost there = that container)
Only inside THIS shop's compose netdb : 5432 (don't hand this out)

Image paths are relative (/img/โ€ฆ) โ€” prefix with the base URL to download.

Admin CRUD: /manage/* (needs Bearer <ADMIN_TOKEN>). Health: /health. Full guide: INTEGRATION.md ยท README.md.