All integrations

Writer

AI · AI

Palmyra chat and text generation, Knowledge Graphs, and no-code apps on their key.

Acts as the person, not as itself

Each user connects their own account. Every call carries both identities — the agent and the person it is acting for — so the agent can never reach past what that individual can already do.

Credentials never touch the agent

Tokens live in the vault and attach server-side at call time. The agent holds a session, not a secret, and revoking access does not mean rotating a key.

Every call on the record

Who asked, which agent acted, which action ran, and the verdict that let it through — one audit trail across every integration, not one per vendor.

What an agent can do

Each action is granted on its own. An agent allowed to read is not thereby allowed to write, and the scope beside each row is what the acting user must have connected for it to run at all.

writer_delete_v1_files_by_file_idWRITE

Permanently delete a file from the system. This action cannot be undone. Permanent: Writer documents that this cannot be undone. Needs the `files` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

files
writer_delete_v1_graphs_by_graph_idWRITE

Delete a Knowledge Graph. Deletes the Knowledge Graph itself; the files it held remain in the file store and can be attached elsewhere. Needs the `knowledge_graphs` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

knowledge_graphs
writer_delete_v1_graphs_by_graph_id_file_by_file_idWRITE

Remove a file from a Knowledge Graph. Needs the `knowledge_graphs` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

knowledge_graphs
writer_get_v1_applicationsREAD

Retrieves a paginated list of no-code agents (formerly called no-code applications) with optional filtering and sorting capabilities. No-code agents are created in AI Studio (Agent Builder), never through the API; a workspace with none answers an empty `data` array. Needs the `applications` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

applications
writer_get_v1_applications_by_application_idREAD

Retrieves detailed information for a specific no-code agent (formerly called no-code applications), including its configuration and current status. Needs the `applications` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

applications
writer_get_v1_applications_by_application_id_graphsREAD

Retrieve Knowledge Graphs associated with a no-code agent that has chat capabilities. Needs the `applications` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

applications
writer_get_v1_applications_by_application_id_jobsREAD

Retrieve all jobs created via the async API, linked to the provided application ID (or alias). Needs the `applications` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

applications
writer_get_v1_applications_jobs_by_job_idREAD

Retrieves a single job created via the Async API. Needs the `applications` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

applications
writer_get_v1_filesREAD

Retrieve a paginated list of files with optional filtering by status, graph association, and file type. `file_types` is a comma-joined list of extensions (`pdf,jpg,docx`); an unknown `status` value answers 400 naming the valid ones (measured 2026-09-19). Needs the `files` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

files
writer_get_v1_files_by_file_idREAD

Retrieve detailed information about a specific file, including its metadata, status, and associated graphs. Needs the `files` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

files
writer_get_v1_graphsREAD

Retrieve a list of Knowledge Graphs. By default, the response contains only org-wide Knowledge Graphs. To include Knowledge Graphs that are deployed to specific teams, pass one or more team IDs in the `team_ids` query parameter. Requests authenticated with a team-scoped API key always return only that key's team; passing a different value in `team_ids` is rejected. `team_ids` is sent as a repeated query parameter (`?team_ids=42&team_ids=43`); a team outside the organization answers 403 naming it in `extras.invalidTeamIds` (measured 2026-09-19). Needs the `knowledge_graphs` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

knowledge_graphs
writer_get_v1_graphs_by_graph_idREAD

Retrieve a Knowledge Graph. Needs the `knowledge_graphs` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

knowledge_graphs
writer_get_v1_modelsREAD

Retrieve a list of available models that can be used for text generation, chat completions, and other AI tasks. Needs the `completions` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

completions
writer_post_v1_applications_by_application_idWRITE

Generate content from an existing no-code agent (formerly called no-code applications) with inputs. Spends generation credits. Streaming is not offered here (`stream` is pinned to false). Applications (no-code agents) are created in AI Studio, not through the API; use `writer_get_v1_applications` to find one. An unknown id answers 404 "Application not found for organization <org> and id <id>" (measured 2026-09-19). Needs the `applications` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

applications
writer_post_v1_applications_by_application_id_jobsWRITE

Generate content asynchronously from an existing no-code agent (formerly called no-code applications) with inputs. Needs the `applications` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

applications
writer_post_v1_applications_jobs_by_job_id_retryWRITE

Re-triggers the async execution of a single job previously created via the Async api and terminated in error. Needs the `applications` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

applications
writer_post_v1_chatWRITE

Generate a chat completion based on the provided messages. The response shown below is for non-streaming. To learn about streaming responses, see the [chat completion guide](https://dev.writer.com/home/chat-completion). Spends generation credits. Streaming is not offered here: the response is one complete JSON document (`stream` is pinned to false by this integration). `max_tokens` must be at least 16 (measured 2026-09-19). Needs the `completions` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

completions
writer_post_v1_completionsWRITE

Generate text completions using the specified model and prompt. This endpoint is useful for text generation tasks that don't require conversational context. Spends generation credits. Streaming is not offered here: the response is one complete JSON document (`stream` is pinned to false). Needs the `completions` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

completions
writer_post_v1_filesWRITE

Upload a new file to the system. Supports various file formats including PDF, DOC, DOCX, PPT, PPTX, JPG, PNG, EML, HTML, SRT, CSV, XLS, and XLSX. File uploads do not accept team parameters. When you attach a file to a Knowledge Graph, the file inherits the team scope of that Knowledge Graph. The file is sent as a JSON envelope: `file_name`, `content_type` and EXACTLY ONE of `content` (UTF-8 text) or `content_base64` (any of the fourteen formats; at most 4 MB decoded). A new file answers `status: in_progress`; poll `writer_get_v1_files_by_file_id` until it is `completed` before adding it to a Knowledge Graph -- measured 2026-09-19, adding a file still processing answers 400 "File <id> is still processing. Try your request later." Needs the `files` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

files
writer_post_v1_files_retryWRITE

Retry processing of files that previously failed to process. This will re-attempt the processing of the specified files. Only files whose status is `failed` qualify; a completed file answers 400 "No errored files associated to the following ids" (measured 2026-09-19). Needs the `files` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

files
writer_post_v1_graphsWRITE

Create a new Knowledge Graph. By default, the new Knowledge Graph is org-wide (accessible to every team in the organization). To deploy the Knowledge Graph to specific teams instead, provide a `team_ids` array in the request body. When the request is authenticated with a team-scoped API key, the new Knowledge Graph is automatically assigned to that key's team and `team_ids` in the body is not accepted. Needs the `knowledge_graphs` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

knowledge_graphs
writer_post_v1_graphs_by_graph_id_fileWRITE

Add a file to a Knowledge Graph. Team access is inherited from the Knowledge Graph; the file itself does not carry team parameters. The file must have finished processing: a file whose status is still `in_progress` answers 400 "File <id> is still processing. Try your request later." (measured 2026-09-19). Poll `writer_get_v1_files_by_file_id` first. Needs the `knowledge_graphs` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

knowledge_graphs
writer_post_v1_graphs_questionWRITE

Ask a question to specified Knowledge Graphs. Spends generation credits. Streaming is not offered here (`stream` is pinned to false); set `subqueries` for a multi-step answer. Needs the `knowledge_graphs` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

knowledge_graphs
writer_post_v1_tools_pdf_parser_by_file_idWRITE

Parse PDF to other formats. The file must be an uploaded PDF (`writer_post_v1_files` with `content_type: application/pdf`) whose status is `completed`. Needs the `tools` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

tools
writer_post_v1_tools_web_searchWRITE

Search the web for information about a given query and return relevant results with source URLs. Streaming is not offered here (`stream` is pinned to false). Needs the `tools` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

tools
writer_post_v1_visionWRITE

Submit images and documents with a prompt to generate an analysis. Supports JPG, PNG, PDF, and TXT files up to 7MB each. Spends generation credits. Upload the images first (`writer_post_v1_files`, image/png or image/jpeg) and reference each file's `name` in the prompt as `{{name}}`; a variable the prompt does not mention answers 400. Use `model: palmyra-x5`: on 2026-09-19 `palmyra-vision` answered 500 "Internal fail" on every call on this workspace while `palmyra-x5` answered 200 with a correct description. Needs the `vision` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

vision
writer_put_v1_applications_by_application_id_graphsWRITE

Updates the list of Knowledge Graphs associated with a no-code chat agent. Needs the `applications` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

applications
writer_put_v1_graphs_by_graph_idWRITE

Update the name, description, web connector URLs, or team assignment of a Knowledge Graph. Including a `team_ids` array replaces the whole team assignment: an empty array makes the Knowledge Graph org-wide, one or more team IDs scope it to exactly those teams. Omitting `team_ids` leaves the current team assignment unchanged. Team-scoped API keys cannot change the team assignment of a Knowledge Graph. Needs the `knowledge_graphs` capability enabled on the API agent that owns the key: a key whose agent lacks it is refused by Writer with 403 rather than 401, which is a console setting and not a credential fault.

knowledge_graphs

Put Writer behind one governed endpoint.

Same permissions, same audit trail, whatever else you connect next.