FUSE Health Programs API

The program surface. Every /:id path is scoped to the key's clinic (404 on anything it does not own).

GitHub OpenAPI

Operations 26

POST /api/v1/programs/copilot/draft Draft a program with FUSE Copilot (AI) #
GET /api/v1/programs List the clinic's programs #
POST /api/v1/programs Create a program #
GET /api/v1/programs/overview Dashboard stats + attention items #
GET /api/v1/programs/copilot/suggestions AI copilot suggestions for improving the clinic's programs #
GET /api/v1/programs/{id} Program detail #
PUT /api/v1/programs/{id} Update a program #
DELETE /api/v1/programs/{id} Delete one of the clinic's programs #
GET /api/v1/programs/{id}/global-products Fee-adjusted product pool for a program #
POST /api/v1/programs/{id}/duplicate Clone a program (deep copy of its product config) #
POST /api/v1/programs/{id}/hero-image Set a program's picture from an image URL #
GET /api/v1/programs/{id}/products Effective per-product patient pricing for a program #
PUT /api/v1/programs/{id}/products Replace the program's product set #
GET /api/v1/programs/{id}/quote Exact checkout quote for one product of a program (no order created) #
POST /api/v1/programs/{id}/upload-image Upload a program cover image (multipart, field `image`) #
POST /api/v1/programs/sync-all Re-sync ALL of the clinic's template-derived programs against their source… #
POST /api/v1/programs/{id}/sync Re-sync one derived program against its source template #
GET /api/v1/programs/{id}/sync-status Whether a derived program is behind its source template #
GET /api/v1/programs/{id}/products/activation-status Per-product activation state within a program #
GET /api/v1/programs/{id}/products/visibility-status Per-product patient-visibility state within a program #
PATCH /api/v1/programs/{id}/products/{productId}/activate Activate/deactivate a product in the program #
PATCH /api/v1/programs/{id}/products/{productId}/visibility Toggle a product's patient visibility #
GET /api/v1/programs/{id}/titration-protocols Titration protocols attached to a program #
POST /api/v1/programs/{id}/titration-protocols Attach a titration protocol to a program #
PUT /api/v1/programs/{id}/titration-protocols/{attachmentId} Update a program's titration-protocol attachment #
DELETE /api/v1/programs/{id}/titration-protocols/{attachmentId} Detach a titration protocol from a program #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/fusehealth-com:fusehealth-com-programs-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

fusehealth-com-programs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: FUSE Brand API (External) Programs API
  version: 1.0.0
  description: 'Server-to-server API exposing the FUSE brand-admin surface so a single brand/tenant can build its own admin frontend. Every request is authenticated with an API key bound to exactly one clinic; all data is auto-scoped to that clinic and cannot reach another brand''s data. Isolation is enforced by application-layer clinic filtering on every query.


    COVERAGE: 218 operations across 180 paths, and EVERY ONE is available to every brand. There is no per-clinic enablement step. What governs access: your API key and its scopes, the clinic the key belongs to (every read and write is filtered to it), your plan''s entitlements for the two commercially-gated areas — Affiliates (`AFFILIATES_TIER_REQUIRED`) and CRM Connect (`CRM_TIER_REQUIRED`) — and rate limits.


    AUTH: the external /api/v1 surface uses an API key (`x-api-key`, ApiKeyAuth). Key management (/api-keys) and /auth/signin live at the API root and use a brand-admin JWT (BearerAuth); /auth/signin itself is unauthenticated.


    SCOPES: every key carries scopes; read-only is the default and mutating endpoints require the `write` scope (403 INSUFFICIENT_SCOPE otherwise). Keys default to a 1-year expiry.


    RATE LIMITING: every endpoint may additionally return `429 Too Many Requests` with a `Retry-After` header; 429 is not repeated on each operation below.


    PLATFORM FIELDS: product cost, fees, pharmacy routing, doctor questions and FUSE approvals are set by FUSE, not by the brand. Any write (POST/PUT/PATCH/DELETE) whose JSON body carries one of those fields at any depth — for example `pharmacyPrice`, `shippingFeeUsd`, `coolerFeeUsd`, `pharmacyId`, `preferredPharmacyId`, `pharmacyProvider`, `requiredDoctorQuestions`, `facilitationFee`, `placeholderPrice`, `legalBusinessName`, `isTemplate` or `tenantManagerApproved` — is refused with `403 PLATFORM_FIELD`, whose `fields` array lists the offending paths; remove them and resend. (One exception: `POST /api/v1/products` still accepts the `pharmacyPrice` its schema requires, and ignores it.) 403 PLATFORM_FIELD is not repeated on each operation below.'
servers:
- url: https://api-dev.fusehealth.com
  description: Development
- url: https://api.fusehealth.com
  description: Production
security:
- ApiKeyAuth: []
tags:


# --- truncated at 32 KB (49 KB total) ---
# Full source: https://artifacts.apis.io/fusehealth-com/openapi/fusehealth-com-programs-api-openapi.yml