openapi: 3.2.0 info: version: '2026-07-01' title: Partner Endpoints Partner Product Link 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/.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: PartnerProductLink description: '' paths: /partner/products/{product_id}/links: get: tags: - PartnerProductLink operationId: PartnerProductLink.ListProductLinks summary: List Product Links description: '' parameters: - name: product_id in: path required: true description: Unique Product ID schema: type: string responses: '200': description: Successful response. The `product_cta` link is reserved for the in-app install CTA and is excluded from this collection. content: application/json: schema: $ref: '#/components/schemas/Public.PartnerProductLinkBlueprint_all' example: - id: pprolnk-ab12C345DeF6 composed_url: https://docs.hint-partner-emr.com?utm_source=hint&utm_medium=marketplace&utm_campaign=hint_marketplace link_type: url position: 1 title: Docs utm_campaign: hint_marketplace utm_content: null value: https://docs.hint-partner-emr.com post: tags: - PartnerProductLink operationId: PartnerProductLink.CreateProductLink summary: Create Product Link 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.PartnerProductLinkBlueprint_one' example: id: pprolnk-ab12C345DeF6 composed_url: https://docs.hint-partner-emr.com?utm_source=hint&utm_medium=marketplace&utm_campaign=hint_marketplace link_type: url position: 1 title: Docs utm_campaign: hint_marketplace utm_content: null value: https://docs.hint-partner-emr.com requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ProductLinkSanitizer' /partner/products/{product_id}/links/{id}: patch: tags: - PartnerProductLink operationId: PartnerProductLink.UpdateProductLink summary: Update Product Link description: '' parameters: - name: product_id in: path required: true description: Unique Product ID schema: type: string - name: id in: path required: true description: Unique Partner Product Link ID schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Public.PartnerProductLinkBlueprint_one' example: id: pprolnk-ab12C345DeF6 composed_url: https://docs.hint-partner-emr.com?utm_source=hint&utm_medium=marketplace&utm_campaign=hint_marketplace link_type: url position: 1 title: Docs utm_campaign: hint_marketplace utm_content: null value: https://docs.hint-partner-emr.com requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ProductLinkSanitizer' delete: tags: - PartnerProductLink operationId: PartnerProductLink.DestroyProductLink summary: Destroy Product Link description: '' parameters: - name: product_id in: path required: true description: Unique Product ID schema: type: string - name: id in: path required: true description: Unique Partner Product Link ID schema: type: string responses: '204': description: Successful response components: schemas: ProductLinkSanitizer: type: object properties: link_type: type: string description: Kind of link. `product_cta` is reserved for the in-app install CTA and is managed via the main product endpoint — not partner-settable here. enum: - url - phone - email value: type: string description: 'Target of the link: a URL (for `url`), a phone number (for `phone`), or an email address (for `email`).' title: type: string description: Display label for the link in the marketplace. utm_campaign: type: string description: Optional UTM campaign appended to the URL when rendered in the marketplace. Defaults to `hint_marketplace` when omitted. utm_content: type: string description: Optional UTM content appended to the URL when rendered in the marketplace. position: type: integer format: int32 description: Display order. Optional — defaults to the next position via `acts_as_list`. required: - link_type - value Public.PartnerProductLinkBlueprint_all: type: array items: type: object properties: id: type: string composed_url: type: string link_type: type: string position: type: integer format: int32 title: type: string utm_campaign: type: string utm_content: type: string value: type: string Public.PartnerProductLinkBlueprint_one: type: object properties: id: type: string composed_url: type: string link_type: type: string position: type: integer format: int32 title: type: string utm_campaign: type: string utm_content: type: string value: type: string securitySchemes: hint_api_key: type: apiKey name: AUTHORIZATION in: header description: 'Enter your token in the format: `Bearer {your_api_key}`'