canonical: https://jentic.com/apis/mindstamp.io/mindstamp

# Mindstamp API

The Mindstamp API builds and measures interactive videos: it adds questions, buttons, hotspots, and other interactions to a video and reports who watched and how they responded. You can create videos from an uploaded key or link existing Vimeo, Wistia, Loom, HeyGen, or Synthesia videos, edit their design, and organise them into groups and series with invite-only access lists. Viewer data covers views, interactions, responses, and weekly or monthly view summaries, and personalized links tie a view to a named viewer or custom_id. It also runs transcripts and translation dubs, with a quote step before a dub job starts.

## For AI agents

Add questions and interactions to Mindstamp videos, create personalized viewer links, and pull views, responses, and insights, plus transcripts and translation dubs.

## Scope

Does not stream live video, edit video footage, or host a general video CDN. Use for interactive video questions, viewer analytics, personalization, and dubbing in Mindstamp only.

## Capabilities

- Add a question to a video at a given time with a prompt, answers, and actions such as jump, link, or email
- Place interactions of type button, image, text, hotspot, redirect, or pause on a video timeline
- Create a personalized link for a viewer with name, email, or custom_id and switch it active or inactive
- List views filtered by video_id, group_id, series_id, viewer_email, or tags, and read each view's interactions
- Read the responses to a single interaction to see how viewers answered a question
- Quote and start a translation dub for a video with target_languages and a full_dub or text_only mode
- Group videos into groups and series and invite viewers by email

## Use cases

### Agent-built interactive training videos through Jentic

An agent preparing a training module can turn a plain video into a quiz. Through Jentic it finds the Mindstamp question-create operation, adds questions at the right timestamps with a prompt and answers, and later reads each interaction's responses to report who answered correctly. Your Mindstamp token stays on your own Jentic One instance, and your rules can let the agent add questions without letting it delete videos.

Example prompt: POST `/interactions/question/create` with video_id 'vid_123', type set to a question type, time 45, prompt 'Which plan includes SSO?', and answers 'Starter,Pro,Enterprise', then GET `/interactions/{id}/responses` after the cohort has watched

### Personalized sales videos and lead capture

Sales teams can send each prospect a personalized link with their name, email, and a custom_id from the CRM, so every view and interaction is tied to that person. Views can then be filtered by is_lead or viewer_email to find engaged prospects, and question answers can map to HubSpot fields through hubspot_field.

Example prompt: POST `/plinks/create` with video_id 'vid_123', name 'Jane Doe', email 'jane@example.com', custom_id 'crm-8841', then GET /views with viewer_email 'jane@example.com'

### Translating videos for new markets

To localise a video, request a quote with target_languages first, then start the dub job with a mode of full_dub or text_only, optional source_language, voice_number, glossary_terms, and translate_interactions to carry questions across. Dub jobs can be read, retried, or cancelled, and a single failed language track can be retried on its own.

Example prompt: POST `/videos/vid_123/dubs/quote` with target_languages ['es','de'], then POST `/videos/vid_123/dubs` with mode 'full_dub', the same target_languages, and translate_interactions true

### Engagement reporting

Marketing and learning teams can report on engagement without exporting from the dashboard. Insights are available per video, series, group, or tag over a start and finish window, and view summaries come in weekly and monthly forms.

Example prompt: GET /insights with series_id 'ser_42', start '2026-10-01', finish '2026-10-31', then GET `/views/summary/month`

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/interactions/question/create` | Create a question |
| POST | `/interactions/create` | Create an interaction |
| GET | `/views` | Get a list of views |
| GET | `/interactions/{id}/responses` | Get responses to an interaction |
| POST | `/plinks/create` | Create a personalized link |
| POST | `/videos/{id}/dubs` | Create a translation job |
| GET | `/insights` | Get insights |
| POST | `/videos/create` | Create a video |

## Key resources

- **Videos** — Create, edit, delete, design, caption, transcribe, and personalize videos
- **Interactions and questions** — Add, update, and delete timed interactions and questions, and read responses
- **Views and viewers** — List views and viewers, their interactions, and view summaries
- **Groups and series** — Organise videos, add videos, and invite viewers
- **Personalized links** — Create and toggle per-viewer links
- **Dubs** — Quote, start, retry, and cancel translation jobs
- **Access lists** — Create lists and add or remove entries with passcodes

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 50 / 100
- **Maturity:** Foundational
- **Dimensions:**
  - Foundational Compliance: 48 / 100
  - Developer Experience & Jentic Compatibility: 73 / 100
  - AI-Readiness & Agent Experience: 26 / 100
  - Agent Usability: 89 / 100
  - Security: 67 / 100
  - AI Discoverability: 79 / 100
- **View full report:** https://jentic.com/apis/mindstamp.io/mindstamp/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring Mindstamp by hand means choosing between a bearer API token and OAuth 2.1 with PKCE, and sending most create and update fields as query parameters. Through Jentic you install once, import Mindstamp from the API Directory, store the token once, and your agent calls it.
- **Permission scoping:** Mindstamp puts the video, group, series, and view ids in the URL path (`/videos/{id}/...`, `/groups/{id}/...`), so a rule can pin your agent to one video or series and the operations you pick. You choose the operations it may call, so destructive ones like video deletion or access-list entry removal are not included unless you add them.
- **Credential handling:** Your Mindstamp token is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'add a quiz question to a video' or 'list views of a video', and Jentic returns the matching Mindstamp operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Vimeo API** — Video hosting whose videos Mindstamp can link by vimeo_id
- **Loom API** — Screen recordings that Mindstamp can import by loom_id
- **HeyGen API** — AI avatar video generation
- **Mux API** — Video streaming infrastructure and playback analytics

## FAQ

### What authentication does the Mindstamp API use?

Per its OpenAPI spec, the Mindstamp API declares three schemes that the operations accept: an API token sent as `Authorization: Bearer <token>` (bearerAuth, tokens never expire), the same Authorization header described as an apiKey scheme (APIKeyHeader), and OAuth 2.1 authorization code with PKCE (oauth2, scope public) for agents and integrations. GET `/status/me` needs no auth. Through Jentic the token is stored encrypted by your own Jentic One instance and injected when the agent calls.

### Can I see how viewers answered a question with the Mindstamp API?

Yes. GET `/interactions/{id}/responses` returns the responses to a single interaction, and GET `/views/{id}/interactions` or GET `/viewers/{id}/interactions` show the interactions tied to one view or one viewer. Use personalized links with an email or custom_id if you need responses tied to named people.

### How do I add a question to a video through Jentic?

Install Jentic One with `curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh`, import the Mindstamp API from the directory, and store your API token. Your agent searches 'add a question to a Mindstamp video', gets POST `/interactions/question/create` with its schema, and sends the required video_id, type, time, and prompt. To run it on your own infrastructure, install Jentic One from its GitHub repo.

### Can I limit what my agent is allowed to do with the Mindstamp API?

Yes. For example, allow POST `/interactions/question/create` and GET `/videos/vid_123/interactions`, so the agent can add and review questions on that one video but cannot delete videos, change access lists, or start paid translation jobs. Every call it makes is logged.

### Is there a Mindstamp MCP server?

You don't need an MCP server to give your agent Mindstamp. Jentic connects it directly from the API Directory: import it, store your credential once, and your agent calls it.

### What are the rate limits for the Mindstamp API?

The OpenAPI spec does not specify rate limits. Check the Mindstamp documentation at https://mindstamp.com for current limits.

### Can I use videos hosted elsewhere with Mindstamp?

Yes. POST `/videos/create` requires a key and title and accepts IDs from other hosts, including vimeo_id, wistia_id, loom_id, heygen_id, synthesia_id, google_drive_id, panopto_id, and bunny_id, so you can add interactions to a video without re-uploading it.
