openapi: 3.2.0 info: version: '2026-07-01' title: Partner Endpoints Testimonial 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: Testimonial description: '' paths: /partner/products/{product_id}/testimonials: get: tags: - Testimonial operationId: Testimonial.ListProductTestimonials summary: List Product Testimonials 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.ProductTestimonialBlueprint_all' example: - id: pproq-ab12C345DeF6 author: Sarah Chen author_image_url: null author_title: Office Manager, Mesa Family Practice position: 1 text: Hint-Partner cut our after-hours call volume in half. post: tags: - Testimonial operationId: Testimonial.CreateProductTestimonial summary: Create Product Testimonial 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.ProductTestimonialBlueprint_one' example: id: pproq-ab12C345DeF6 author: Sarah Chen author_image_url: null author_title: Office Manager, Mesa Family Practice position: 1 text: Hint-Partner cut our after-hours call volume in half. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ProductTestimonialSanitizer' /partner/products/{product_id}/testimonials/{id}: patch: tags: - Testimonial operationId: Testimonial.UpdateProductTestimonial summary: Update Product Testimonial description: '' parameters: - name: product_id in: path required: true description: Unique Product ID schema: type: string - name: id in: path required: true description: Unique Testimonial ID schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Public.ProductTestimonialBlueprint_one' example: id: pproq-ab12C345DeF6 author: Sarah Chen author_image_url: null author_title: Office Manager, Mesa Family Practice position: 1 text: Hint-Partner cut our after-hours call volume in half. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ProductTestimonialSanitizer' delete: tags: - Testimonial operationId: Testimonial.DestroyProductTestimonial summary: Destroy Product Testimonial description: '' parameters: - name: product_id in: path required: true description: Unique Product ID schema: type: string - name: id in: path required: true description: Unique Testimonial ID schema: type: string responses: '204': description: Successful response components: schemas: Public.ProductTestimonialBlueprint_one: type: object properties: id: type: string author: type: string author_image_url: type: string author_title: type: string position: type: integer format: int32 text: type: string ProductTestimonialSanitizer: type: object properties: text: type: string description: Body of the testimonial. author: type: string description: Display name of the person being quoted. author_title: type: string description: Role + organization shown under the author name (e.g. "Office Manager, Mesa Family Practice"). author_image: type: string description: Author headshot as a base64 data URI (e.g. `"data:image/jpeg;base64,..."`). position: type: integer format: int32 description: Display order. Optional — defaults to the next position via `acts_as_list`. required: - text - author - author_title Public.ProductTestimonialBlueprint_all: type: array items: type: object properties: id: type: string author: type: string author_image_url: type: string author_title: type: string position: type: integer format: int32 text: type: string securitySchemes: hint_api_key: type: apiKey name: AUTHORIZATION in: header description: 'Enter your token in the format: `Bearer {your_api_key}`'