From b67ae81863a49e4fa65b15c9073d1e4e1baac4bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mircea=20Rila=CC=86?= Date: Wed, 2 Sep 2026 17:42:38 +0300 Subject: [PATCH] feat(services): add SingleFax List the live Stripe SPT machine-fax endpoint so agents can discover HTTP 402 pay-per-fax on mpp.dev. Co-authored-by: Cursor --- schemas/services.ts | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/schemas/services.ts b/schemas/services.ts index bd133cac..8fd631e0 100644 --- a/schemas/services.ts +++ b/schemas/services.ts @@ -4135,6 +4135,44 @@ export const services: ServiceDef[] = [ ], }, + // ── SingleFax ────────────────────────────────────────────────────────── + { + id: "singlefax", + name: "SingleFax", + url: "https://singlefax.com", + serviceUrl: "https://singlefax.com", + description: + "Send a fax from an agent. HTTP 402 + Stripe Shared Payment Token, PDF upload, delivery status.", + categories: ["web"], + integration: "first-party", + tags: ["fax", "communications", "pdf", "physical"], + docs: { + homepage: "https://singlefax.com/agents", + apiReference: "https://singlefax.com/openapi.json", + llmsTxt: "https://singlefax.com/llms.txt", + }, + provider: { name: "SingleFax", url: "https://singlefax.com" }, + realm: "singlefax.com", + intent: "charge", + payments: [STRIPE_PAYMENT], + endpoints: [ + { + route: "POST /api/v1/machine/faxes/validate", + desc: "Quote a fax send without charging", + }, + { + route: "POST /api/v1/machine/faxes", + desc: "Create and pay a machine fax (HTTP 402 until a Stripe SPT is attached)", + dynamic: true, + amountHint: "From $0.99 for 10 pages, then about $0.08/page", + }, + { + route: "GET /api/v1/machine/faxes/:request_id", + desc: "Poll machine fax status (statusToken query required)", + }, + ], + }, + // ── Prospect Butcher Co ───────────────────────────────────────────────── { id: "prospect-butcher",