Sign inGet started

Developers

Integrate PharmaLink into your ERP, procurement or supply-chain systems. Read the verified catalogue over a REST API, and subscribe to marketplace events via signed webhooks.

Authentication

Every request is authenticated with a Bearer API key, created under Account > Integrations. Keys are organization-scoped.

curl https://pharmaconnectb2b.duckdns.org/api/v1/products?q=paracetamol \
  -H "Authorization: Bearer plk_live_xxxxxxxxxxxx"

Available scopes: catalog:readrfq:readsuppliers:read

Endpoints

EndpointScopeReturns
GET /api/v1/productscatalog:readSearch live products from verified suppliers (q, cas, cert, country).
GET /api/v1/products/{id}catalog:readA single product with its supplier and certifications.
GET /api/v1/supplierssuppliers:readVerified suppliers with certifications and product counts.
GET /api/v1/rfqsrfq:readYour organization's own RFQs, with derived status.

Webhooks

Register an https endpoint and choose the events you want. We POST a JSON payload signed with HMAC-SHA256.

rfq.postedquote.receivedquote.awardedrfq.cancelledorg.verifiedproduct.publisheddeal.created

Verify the x-pharmalink-signature header against the raw request body using your webhook secret:

// Node — verify the signature on your endpoint
import crypto from 'node:crypto';
const sig = req.headers['x-pharmalink-signature'];
const expected = crypto.createHmac('sha256', WEBHOOK_SECRET)
  .update(rawBody).digest('hex');
const ok = crypto.timingSafeEqual(Buffer.from(sig), Buffer.from(expected));

Ready to start? Create an API key under Account > Integrations.