Hint Health App API

The App API from Hint Health — 1 operation(s) for app.

Operations 3

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /partner/products/{product_id}/app Get a product's embedded app settings · Get App #
Ask an LLM
“What app configuration sits behind one of my products?”
“What handshake URL and role mappings does my product's app use?”
Tell an agent
Show the app for product {product_id}.
Get product {product_id}'s app handshake URL and roles.
PATCH /partner/products/{product_id}/app Change a product app's handshake or roles · Update App #
Ask an LLM
“How do I change the handshake URL on my product's existing app?”
“Can I update the browser allow list for an app I already set up?”
Tell an agent
Update the handshake URL of product {product_id}'s app to {handshake_url}.
Set the browser allow list on product {product_id}'s app to {browser_allow_list}.
POST /partner/products/{product_id}/app Create an embedded app for a product · Create App #
Ask an LLM
“How do I set up an app with a handshake URL for my product?”
“Can I define partner roles and default role mappings when creating the app?”
Tell an agent
Create an app for product {product_id} with handshake URL {handshake_url}.
Create product {product_id}'s app with default admin role {default_admin_role} and non-admin role {default_non_admin_role}.

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/hint-health:hint-health-app-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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

hint-health-app-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: '2026-07-01'
  title: Partner Endpoints App API
  description: Hint Health API
  contact:
    name: Hint
    email: devsupport@hint.com
    url: https://developers.hint.com
  license:
    name: Private
  termsOfService: https://www.hint.com/terms
  x-api-evangelist-harvest:
    generated: '2026-08-15'
    method: searched
    source: https://developers.hint.com/reference/<slug>.md (204 pages indexed by https://developers.hint.com/llms.txt)
    note: 'Assembled from the per-endpoint OpenAPI 3.1 documents Hint publishes verbatim inside each ReadMe reference page''s ''# OpenAPI definition'' fenced JSON block. Every path item, schema, tag and server value is Hint''s own text; only the union of paths and components was computed. Ownership is not in question: info.title ''Partner Endpoints'', info.contact devsupport@hint.com, info.termsOfService https://www.hint.com/terms and servers api.sandbox.hint.com all name Hint Health.'
    pages_fetched: 204
    pages_carrying_a_spec: 200
    operations: 200
    supersedes: openapi/_original/hint-health-hint-health-api-openapi.yml (harvested 2026-06-13, 153 operations)
    follow_up: NOT yet split into per-tag specs and deliberately NOT wired into apis.yml — the 49 refined specs in openapi/ still derive from the June harvest. Re-run refine-openapis to re-split from this document and pick up the 47 operations the catalogue is missing (appointments, appointment types, communication authorizations, the partner-invisible clinical chart endpoints, and the products/installations/backends marketplace surface).
servers:
- url: https://api.sandbox.hint.com/api
tags:
- name: App
  description: ''
paths:
  /partner/products/{product_id}/app:
    get:
      tags:
      - App
      operationId: App.GetProductApp
      summary: Get App
      description: ''
      parameters:
      - name: product_id
        in: path
        required: true
        description: Unique Product ID
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Public.AppBlueprint_one'
              example:
                id: papp-ab12C345DeF6
                browser_allow_list: []
                default_admin_role: admin
                default_non_admin_role: clinician
                handshake_url: https://hint-partner-emr.com/hint/handshake
                localhost_handshake_url: http://localhost:3000/hint/handshake
                name: Hint-Partner EMR
                prepopulate_role_mappings: true
                status: in_development
                partner_roles:
                - name: admin
                  description: Full access to all features
                - name: clinician
                  description: Can read patient charts and write notes
                surfaces:
                - id: panch-ab12C345DeF6
                  source_url: https://hint-partner-emr.com/hint/core_page
                  localhost_source_url: http://localhost:3000/hint/core_page
                  type: core_page
                  core_page_icon_url: null
                  core_page_icon_label: Partner EMR
                  core_page_auto_adjust_height: true
    patch:
      tags:
      - App
      operationId: App.UpdateProductApp
      summary: Update App
      description: ''
      parameters:
      - name: product_id
        in: path
        required: true
        description: Unique Product ID
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Public.AppBlueprint_one'
              example:
                id: papp-ab12C345DeF6
                browser_allow_list: []
                default_admin_role: admin
                default_non_admin_role: clinician
                handshake_url: https://hint-partner-emr.com/hint/handshake
                localhost_handshake_url: http://localhost:3000/hint/handshake
                name: Hint-Partner EMR
                prepopulate_role_mappings: true
                status: in_development
                partner_roles:
                - name: admin
                  description: Full access to all features
                - name: clinician
                  description: Can read patient charts and write notes
                surfaces:
                - id: panch-ab12C345DeF6
                  source_url: https://hint-partner-emr.com/hint/core_page
                  localhost_source_url: http://localhost:3000/hint/core_page
                  type: core_page
                  core_page_icon_url: null
                  core_page_icon_label: Partner EMR
                  core_page_auto_adjust_height: true
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AppSanitizer'
    post:
      tags:
      - App
      operationId: App.CreateProductApp
      summary: Create App
      description: ''
      parameters:
      - name: product_id
        in: path
        required: true
        description: Unique Product ID
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Public.AppBlueprint_one'
              example:
                id: papp-ab12C345DeF6
                browser_allow_list: []
                default_admin_role: admin
                default_non_admin_role: clinician
                handshake_url: https://hint-partner-emr.com/hint/handshake
                localhost_handshake_url: http://localhost:3000/hint/handshake
                name: Hint-Partner EMR
                prepopulate_role_mappings: true
                status: in_development
                partner_roles:
                - name: admin
                  description: Full access to all features
                - name: clinician
                  description: Can read patient charts and write notes
                surfaces:
                - id: panch-ab12C345DeF6
                  source_url: https://hint-partner-emr.com/hint/core_page
                  localhost_source_url: http://localhost:3000/hint/core_page
                  type: core_page
                  core_page_icon_url: null
                  core_page_icon_label: Partner EMR
                  core_page_auto_adjust_height: true
      requestBody:
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AppSanitizer'
components:
  schemas:
    Public.PartnerRoleBlueprint_one:
      type: object
      properties:
        name:
          type: string
        description:
          type: string
    Public.AppBlueprint_one:
      type: object
      properties:
        id:
          type: string
        browser_allow_list:
          type: array
          items:
            type: string
        default_admin_role:
          type: string
        default_non_admin_role:
          type: string
        handshake_url:
          type: string
        localhost_handshake_url:
          type: string
        name:
          type: string
        prepopulate_role_mappings:
          type: boolean
        status:
          type: string
        partner_roles:
          type: array
          items:
            $ref: '#/components/schemas/Public.PartnerRoleBlueprint_one'
        surfaces:
          type: array
          items:
            $ref: '#/components/schemas/Public.AppSurfaceBlueprint_one'
    Public.AppSurfaceBlueprint_one:
      type: object
      properties:
        id:
          type: string
        source_url:
          type: string
        localhost_source_url:
          type: string
        type:
          type: string
        interaction_title:
          type: string
        interaction_description:
          type: string
        interaction_type:
          type: string
        core_page_icon_url:
          type: string
        core_page_icon_label:
          type: string
        core_page_auto_adjust_height:
          type: boolean
        clinical_chart_icon_url:
          type: string
        clinical_chart_icon_label:
          type: string
        settings_label:
          type: string
    AppSanitizer.PartnerRoleSanitizer:
      type: object
      properties:
        name:
          type: string
          description: Stable identifier for the role. Required; must be unique across the app's roles.
        description:
          type: string
          description: Free-form description of what the role grants.
      required:
      - name
    AppSanitizer:
      type: object
      properties:
        handshake_url:
          type: string
          description: URL where Hint POSTs the handshake payload during embed bootstrapping. Must be https.
        localhost_handshake_url:
          type: string
          description: HTTP localhost URL used in place of `handshake_url` when the current session has localhost mode enabled. Sandbox partners only.
        default_admin_role:
          type: string
          description: Role name to apply to hinters and to admin users by default. Must match the `name` of one of the entries in partner_roles.
        default_non_admin_role:
          type: string
          description: Role name to apply to non-admin users by default. Must match the `name` of one of the entries in partner_roles.
        prepopulate_role_mappings:
          type: boolean
          description: When true, new practice→role mappings are prepopulated with the default role.
        partner_roles:
          type: array
          items:
            $ref: '#/components/schemas/AppSanitizer.PartnerRoleSanitizer'
          description: List of partner-defined roles. Each entry has a `name` (unique, required) and a `description` (free text, optional).
        browser_allow_list:
          type: array
          items:
            type: string
          description: 'Browser capabilities delegated to the app''s embedded iframes via the Permissions Policy `allow` attribute. Supported values: `camera`, `microphone`, `geolocation`. Defaults to `[]` (no delegation). The end user still sees the browser''s own permission prompt for each capability. Changes apply the next time a surface is embedded — already-open surfaces must be reloaded.'
  securitySchemes:
    hint_api_key:
      type: apiKey
      name: AUTHORIZATION
      in: header
      description: 'Enter your token in the format: `Bearer {your_api_key}`'