Operations
What a key can call — through the API and as an MCP tool.
Every operation exists exactly once: as an API address for programs and — when it reads or proposes drafts — as a tool for AI assistants. A program key may call the operations you tick when creating it; an AI assistant the reading ones of its areas and proposing drafts. Writing operations are for programs only.
All addresses sit under the API address ModiFax shows you after creating the key. The account is never part of the call — it comes from the key. Writing calls need an Idempotency-Key (see Fill the blog from outside); what a program created can be taken back. For tools and code generators the same list is machine-readable as OpenAPI 3.1 at /v1/openapi.json.
Account
| Operation | Endpoint |
|---|---|
| Query its own account | GET /v1/meMCP tool: me |
| Search a project, as far as the key may read | GET /v1/projects/{projectId}/searchMCP tool: search |
AI drafts
| Operation | Endpoint |
|---|---|
| List its own drafts | GET /v1/draftsMCP tool: drafts_list |
| Propose drafts | POST /v1/draftsMCP tool: drafts_propose |
| Withdraw its own drafts | POST /v1/drafts/{id}/withdrawMCP tool: drafts_withdraw |
Story & screenplay
| Operation | Endpoint |
|---|---|
| List projects | GET /v1/projectsMCP tool: projects_list |
| Read a project | GET /v1/projects/{id}MCP tool: projects_get |
| Create projects | POST /v1/projectsPrograms only |
| Edit projects | PUT /v1/projects/{projectId}Programs only |
| List a project's screenplays | GET /v1/projects/{projectId}/screenplaysMCP tool: screenplays_list |
| Read a screenplay | GET /v1/screenplays/{id}MCP tool: screenplays_get |
| Write a screenplay out as a Fountain or Final Draft file | GET /v1/screenplays/{id}/exportMCP tool: screenplays_export |
| List a screenplay's revisions | GET /v1/screenplays/{screenplayId}/revisionsMCP tool: screenplays_revisions_list |
| See what changed between the latest revisions and what it affects | GET /v1/screenplays/{screenplayId}/changesMCP tool: screenplays_changes |
| List a project's scenes | GET /v1/projects/{projectId}/scenesMCP tool: scenes_list |
| Read a scene | GET /v1/scenes/{id}MCP tool: scenes_get |
| Edit scenes | PUT /v1/scenes/{id}Programs only |
| List a project's breakdown | GET /v1/projects/{projectId}/breakdownMCP tool: breakdown_list |
| Add breakdown elements | POST /v1/projects/{projectId}/breakdownPrograms only |
| Change breakdown elements | PUT /v1/breakdown/{id}Programs only |
| View the storyboard | GET /v1/projects/{projectId}/storyboardMCP tool: storyboard_list |
| Edit storyboard frames | PUT /v1/storyboard/{id}Programs only |
| List a project's shots | GET /v1/projects/{projectId}/shotsMCP tool: shots_list |
| Read a shot | GET /v1/shots/{id}MCP tool: shots_get |
| Create shots | POST /v1/projects/{projectId}/shotsPrograms only |
| Edit shots | PUT /v1/shots/{id}Programs only |
| List a project's characters | GET /v1/projects/{projectId}/charactersMCP tool: characters_list |
| Read a character | GET /v1/characters/{id}MCP tool: characters_get |
| Create characters | POST /v1/projects/{projectId}/charactersPrograms only |
| Edit characters | PUT /v1/characters/{id}Programs only |
Production
| Operation | Endpoint |
|---|---|
| See a project's completeness and open items | GET /v1/projects/{projectId}/completenessMCP tool: projects_completeness |
| View shooting days | GET /v1/projects/{projectId}/shooting-daysMCP tool: shootingDays_list |
| Read a shooting day | GET /v1/shooting-days/{id}MCP tool: shootingDays_get |
| Put scenes on shooting days | POST /v1/scenes/{sceneId}/schedulePrograms only |
| List a project's locations | GET /v1/projects/{projectId}/locationsMCP tool: locations_list |
| Read a location | GET /v1/locations/{id}MCP tool: locations_get |
| Create locations | POST /v1/projects/{projectId}/locationsPrograms only |
| Edit locations | PUT /v1/locations/{id}Programs only |
| List a project's tasks | GET /v1/projects/{projectId}/tasksMCP tool: tasks_list |
| Read a task | GET /v1/tasks/{id}MCP tool: tasks_get |
| Create tasks | POST /v1/projects/{projectId}/tasksPrograms only |
| Edit tasks | PUT /v1/tasks/{id}Programs only |
| View daily reports | GET /v1/projects/{projectId}/daily-reportsMCP tool: dailyReports_list |
| Read a daily report | GET /v1/daily-reports/{id}MCP tool: dailyReports_get |
| Edit daily reports | PUT /v1/daily-reports/{id}Programs only |
| View sound reports | GET /v1/projects/{projectId}/sound-reportsMCP tool: soundReports_list |
| Read a sound report | GET /v1/sound-reports/{id}MCP tool: soundReports_get |
| Create sound reports | POST /v1/projects/{projectId}/sound-reportsPrograms only |
| Edit sound reports | PUT /v1/sound-reports/{id}Programs only |
| View call sheets | GET /v1/projects/{projectId}/call-sheetsMCP tool: callSheets_list |
| Read a call sheet | GET /v1/call-sheets/{id}MCP tool: callSheets_get |
| Get a project's edit package | GET /v1/projects/{projectId}/edit-packageMCP tool: editPackage_get |
| View looks | GET /v1/projects/{projectId}/looksMCP tool: looks_list |
| Read a look | GET /v1/looks/{id}MCP tool: looks_get |
| Create looks | POST /v1/projects/{projectId}/looksPrograms only |
| Edit looks | PUT /v1/looks/{id}Programs only |
| View assets | GET /v1/projects/{projectId}/assetsMCP tool: assets_list |
| Read an asset | GET /v1/assets/{id}MCP tool: assets_get |
| Add assets | POST /v1/projects/{projectId}/assetsPrograms only |
| Change assets | PUT /v1/assets/{id}Programs only |
| View equipment | GET /v1/projects/{projectId}/equipmentMCP tool: equipment_list |
| Read a piece of equipment | GET /v1/equipment/{id}MCP tool: equipment_get |
| Add equipment | POST /v1/projects/{projectId}/equipmentPrograms only |
| Change equipment | PUT /v1/equipment/{id}Programs only |
Media
| Operation | Endpoint |
|---|---|
| List a project's media | GET /v1/projects/{projectId}/mediaMCP tool: media_list |
| Edit media | PUT /v1/media/{id}Programs only |
| Search transcripts | GET /v1/media/transcriptsMCP tool: media_transcripts_search |
| View a media item's thumbnail | GET /v1/media/{id}/thumbnailMCP tool: media_thumbnail |
| View deliveries | GET /v1/projects/{projectId}/deliverablesMCP tool: deliverables_list |
| List a delivery's versions with their review stage | GET /v1/deliverables/{deliverableId}/versionsMCP tool: deliverables_versions_list |
| List library videos with their figures | GET /v1/videosMCP tool: videos_list |
| See a video's figures | GET /v1/videos/{id}MCP tool: videos_get |
| Change a video's title, description and keywords | PATCH /v1/videos/{id}Programs only |
| Read a video's chapters | GET /v1/videos/{videoId}/chaptersMCP tool: videos_chapters_list |
| Set a video's chapters | PUT /v1/videos/{videoId}/chaptersPrograms only |
| See the account's video figures | GET /v1/analytics/overviewMCP tool: analytics_overview |
| List the account's livestreams | GET /v1/livestreamsMCP tool: livestreams_list |
Websites & blog
| Operation | Endpoint |
|---|---|
| Write blog posts of a website | POST /v1/websites/{websiteId}/postsPrograms only |
| List the account's websites | GET /v1/websitesMCP tool: websites_list |
| Read a website's blog posts | GET /v1/websites/{websiteId}/postsMCP tool: blog_posts_list |