DOCS & KNOWLEDGE · FILES & DOCS
Documents, collections, and comments in the knowledge base they can see.
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.
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.
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.
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.
outline_post_accessrequests_approveWRITEApprove an access request. Approve a pending access request, granting the requesting user a membership on the document with the specified permission. POST /accessRequests.approve
outline_post_accessrequests_createWRITECreate an access request. Request access to a document. The request will be sent to users with permission to share the document for approval or dismissal. POST /accessRequests.create
outline_post_accessrequests_dismissWRITEDismiss an access request. Dismiss a pending access request without granting the requesting user access to the document. POST /accessRequests.dismiss
outline_post_accessrequests_infoREADRetrieve an access request. Retrieve information about an access request by `id`, or the current user's pending request for a document by `documentId`. At least one of these parameters must be provided. POST /accessRequests.info
outline_post_attachments_createWRITECreate an attachment. Creating an attachment object creates a database record and returns the inputs needed to generate a signed url and upload the file from the client to cloud storage. POST /attachments.create
outline_post_attachments_deleteWRITEDelete an attachment. Deleting an attachment is permanent. It will not delete references or links to the attachment that may exist in your documents. POST /attachments.delete
outline_post_attachments_redirectREADRetrieve an attachment. Load an attachment from where it is stored based on the id. If the attachment is private then a temporary, signed url with embedded credentials is generated on demand. POST /attachments.redirect
outline_post_auth_configREADRetrieve auth config. Retrieve authentication options POST /auth.config
outline_post_auth_infoREADRetrieve auth. Retrieve authentication details for the current API key POST /auth.info
outline_post_collections_add_groupWRITEAdd a group to a collection. This method allows you to give all members in a group access to a collection. POST /collections.add_group
outline_post_collections_add_userWRITEAdd a collection user. This method allows you to add a user membership to the specified collection. POST /collections.add_user
outline_post_collections_createWRITECreate a collection. Create a new collection with the specified name, description, icon, color, and permission settings. Collections are used to organize documents. POST /collections.create
outline_post_collections_deleteWRITEDelete a collection. Delete a collection and all of its documents. This action can’t be undone so please be careful. POST /collections.delete
outline_post_collections_documentsREADRetrieve a collections document structure. Returns the document structure of a collection as a tree of navigation nodes, representing the hierarchy of documents within the collection. POST /collections.documents
outline_post_collections_duplicateWRITEDuplicate a collection. Duplicate an existing collection along with its published documents. The original collection's settings – icon, color, permission, sharing, and sorting – are preserved on the copy. Draft and archived documents are not duplicated. Document duplication runs asynchronously in the background, so the copy may initially be returned before all of its documents have been created. POST /collections.duplicate
outline_post_collections_exportWRITEExport a collection. Triggers a bulk export of the collection in markdown format and their attachments. If documents are nested then they will be nested in folders inside the zip file. The endpoint returns a `FileOperation` that can be queried to track the progress of the export and get the url for the final file. POST /collections.export
outline_post_collections_export_allWRITEExport all collections. Triggers a bulk export of multiple collections and their documents. The endpoint returns a `FileOperation` that can be queried through the fileOperations endpoint to track the progress of the export and get the url for the final file. POST /collections.export_all
outline_post_collections_group_membershipsREADList all collection group members. This method allows you to list a collections group memberships. This is the list of groups that have been given access to the collection. POST /collections.group_memberships
outline_post_collections_infoREADRetrieve a collection. Retrieve the details of a collection by its unique identifier. POST /collections.info
outline_post_collections_listREADList all collections. List all collections that the authenticated user has access to. POST /collections.list
outline_post_collections_membershipsREADList all collection memberships. This method allows you to list a collections individual memberships. It's important to note that memberships returned from this endpoint do not include group memberships. POST /collections.memberships
outline_post_collections_remove_groupWRITERemove a collection group. This method allows you to revoke all members in a group access to a collection. Note that members of the group may still retain access through other groups or individual memberships. POST /collections.remove_group
outline_post_collections_remove_userWRITERemove a collection user. This method allows you to remove a user from the specified collection. POST /collections.remove_user
outline_post_collections_updateWRITEUpdate a collection. Update an existing collection's properties such as name, description, icon, color, sharing settings, or permission level. POST /collections.update
outline_post_comments_createWRITECreate a comment. Add a comment or reply to a document, either `data` or `text` is required. Provide `anchorText` to create an inline comment attached to a specific text range in the document. POST /comments.create
outline_post_comments_deleteWRITEDelete a comment. Deletes a comment. If the comment is a top-level comment, all its children will be deleted as well. POST /comments.delete
outline_post_comments_infoREADRetrieve a comment. POST /comments.info
outline_post_comments_listREADList all comments. This method will list all comments matching the given properties. POST /comments.list
outline_post_comments_updateWRITEUpdate a comment. POST /comments.update
outline_post_dataattributes_createWRITECreate a data attribute. Create a new data attribute. Only admins can create data attributes. POST /dataAttributes.create
outline_post_dataattributes_deleteWRITEDelete a data attribute. Delete a data attribute. Only admins can delete data attributes. POST /dataAttributes.delete
outline_post_dataattributes_infoREADRetrieve a data attribute. Retrieve a data attribute by its unique identifier. POST /dataAttributes.info
outline_post_dataattributes_listREADList all data attributes. POST /dataAttributes.list
outline_post_dataattributes_updateWRITEUpdate a data attribute. Update an existing data attribute. Only admins can update data attributes. Note that the dataType cannot be changed after creation. POST /dataAttributes.update
outline_post_documents_add_groupWRITEAdd a group to a document. This method allows you to give all members in a group access to a document. POST /documents.add_group
outline_post_documents_add_userWRITEAdd a document user. This method allows you to add a user membership to the specified document. POST /documents.add_user
outline_post_documents_answerquestionREADQuery documents with natural language. This method allows asking direct questions of your documents – where possible an answer will be provided. Search results will be restricted to those accessible by the current access token. Note that "AI answers" must be enabled for the workspace. POST /documents.answerQuestion
outline_post_documents_archiveWRITEArchive a document. Archiving a document allows outdated information to be moved out of sight whilst retaining the ability to optionally search and restore it later. POST /documents.archive
outline_post_documents_archivedREADList all archived documents. This method will list all archived documents belonging to the workspace that the current user has access to. POST /documents.archived
outline_post_documents_createWRITECreate a document. This method allows you to create or publish a new document. By default a document is set to the collection root. If you want to create a nested/child document, you should pass parentDocumentId to set the parent document. POST /documents.create
outline_post_documents_deleteWRITEDelete a document. Deleting a document moves it to the trash. If not restored within 30 days it is permanently deleted. POST /documents.delete
outline_post_documents_deletedREADList all deleted documents. This method will list all deleted documents belonging to the workspace that the current user has access to. POST /documents.deleted
outline_post_documents_documentsREADRetrieve a document's child structure. This method returns the nested document structure (tree) for the children of the specified document. POST /documents.documents
outline_post_documents_draftsREADList all draft documents. This method will list all draft documents belonging to the current user. POST /documents.drafts
outline_post_documents_duplicateWRITEDuplicate a document. This method allows you to duplicate an existing document and optionally all of its child documents. POST /documents.duplicate
outline_post_documents_empty_trashWRITEEmpty trash. Permanently delete all documents in the trash. This action is irreversible. Only available to admin users. POST /documents.empty_trash
outline_post_documents_exportREADExport a document. Export a document in Markdown, HTML, PDF, or TextBundle format. The response format is determined by the Accept header (`text/markdown`, `text/html`, `application/pdf`, or `application/x-textbundle`). Optionally include child documents in the export as a zip file. POST /documents.export
outline_post_documents_group_membershipsREADList document group memberships. This method allows you to list a document's group memberships. POST /documents.group_memberships
outline_post_documents_infoREADRetrieve a document. Retrieve a document by its `UUID`, `urlId`, or `shareId`. At least one of these parameters must be provided. POST /documents.info
outline_post_documents_insightsREADRetrieve insights for a document. Retrieve a chronologically sorted array of activity rollups (views, comments, reactions, revisions, editors) for a document. Recent activity is returned as daily rollups, while older activity is aggregated into weekly rollups. Insights must be enabled on the document. Defaults to the last 30 days when no date range is provided. POST /documents.insights
outline_post_documents_listREADList all documents. This method will list all published documents and draft documents belonging to the current user. POST /documents.list
outline_post_documents_membershipsREADList document memberships. Users with direct membership to a document. To list all users with access to a document use `documents.users`. POST /documents.memberships
outline_post_documents_moveWRITEMove a document. Move a document to a new location or collection. If no parent document is provided, the document will be moved to the collection root. POST /documents.move
outline_post_documents_remove_groupWRITERemove a group from a document. This method allows you to revoke all members in a group access to a document. POST /documents.remove_group
outline_post_documents_remove_userWRITERemove a document user. This method allows you to remove a user membership from the specified document. POST /documents.remove_user
outline_post_documents_restoreWRITERestore a document. If a document has been archived or deleted, it can be restored. Optionally a revision can be passed to restore the document to a previous point in time. POST /documents.restore
outline_post_documents_searchREADSearch all documents. This methods allows you to search your workspace's documents with keywords. Note that search results will be restricted to those accessible by the current access token. POST /documents.search
outline_post_documents_search_titlesREADSearch document titles. This method allows you to search document titles with keywords. Unlike documents.search, this only searches titles and returns faster results. POST /documents.search_titles
outline_post_documents_templatizeWRITECreate a template from a document. This method allows you to create a new template using an existing document as the basis POST /documents.templatize
outline_post_documents_unpublishWRITEUnpublish a document. Unpublishing a document moves it back to a draft status and out of the collection. POST /documents.unpublish
outline_post_documents_updateWRITEUpdate a document. This method allows you to modify an already created document POST /documents.update
outline_post_documents_usersREADList document users. All users with access to a document. To list only users with direct membership to the document use `documents.memberships` POST /documents.users
outline_post_documents_viewedREADList all recently viewed documents. This method will list all documents recently viewed by the current user. POST /documents.viewed
outline_post_events_listREADList all events. Events are an audit trail of important events that happen in the knowledge base. POST /events.list
outline_post_fileoperations_deleteWRITEDelete a file operation. Delete a file operation and its associated files. This is useful for cleaning up completed or failed import/export operations. POST /fileOperations.delete
outline_post_fileoperations_infoREADRetrieve a file operation. Retrieve the details and current status of a file operation by its unique identifier. File operations represent long-running import or export tasks. POST /fileOperations.info
outline_post_fileoperations_listREADList all file operations. List all file operations for the current workspace, filtered by type (import or export). POST /fileOperations.list
outline_post_groups_add_userWRITEAdd a group member. This method allows you to add a user to the specified group. POST /groups.add_user
outline_post_groups_createWRITECreate a group. Create a new group with the specified name. Groups can be used to organize users and assign collection permissions to multiple users at once. POST /groups.create
outline_post_groups_deleteWRITEDelete a group. Deleting a group will cause all of its members to lose access to any collections the group has previously been added to. This action can’t be undone so please be careful. POST /groups.delete
outline_post_groups_infoREADRetrieve a group. Retrieve the details of a group by its unique identifier, including its name and member count. POST /groups.info
outline_post_groups_listREADList all groups. List all groups in the workspace. Groups are used to organize users and manage permissions for collections. POST /groups.list
outline_post_groups_membershipsREADList all group members. List and filter all the members in a group. POST /groups.memberships
outline_post_groups_remove_userWRITERemove a group member. This method allows you to remove a user from the group. POST /groups.remove_user
outline_post_groups_updateWRITEUpdate a group. Update an existing group's name. The group is identified by its unique identifier. POST /groups.update
outline_post_oauthauthentications_deleteWRITEDelete an OAuth authentiation. Revoke an OAuth authentication, removing the third-party application's access to the user's account. POST /oauthAuthentications.delete
outline_post_oauthauthentications_listREADList accessible OAuth authentications. List all OAuth authentications for the current user. These represent the third-party applications that the user has authorized to access their account. POST /oauthAuthentications.list
outline_post_oauthclients_createWRITECreate an OAuth client. Create a new OAuth client application that can be used to authenticate users and access the API on their behalf. POST /oauthClients.create
outline_post_oauthclients_deleteWRITEDelete an OAuth client. Permanently delete an OAuth client and revoke all associated access tokens. This action cannot be undone. POST /oauthClients.delete
outline_post_oauthclients_infoREADRetrieve an OAuth client. To retrieve information about an OAuth client you must pass either an `id` or a `clientId`. POST /oauthClients.info
outline_post_oauthclients_listREADList accessible OAuth clients. List all OAuth clients that the authenticated user has access to. This includes both clients created by the user and published clients available to the workspace. POST /oauthClients.list
outline_post_oauthclients_rotate_secretWRITERotate the secret for an OAuth client. Generate a new client secret for an OAuth client. The old secret will be invalidated immediately, so ensure your application is updated to use the new secret. POST /oauthClients.rotate_secret
outline_post_oauthclients_updateWRITEUpdate an OAuth client. Update an existing OAuth client's properties such as name, description, redirect URIs, or published status. POST /oauthClients.update
outline_post_revisions_infoREADRetrieve a revision. A revision is a snapshot of a document at a specific point in time. This endpoint allows you to retrieve a specific version of a document by its unique identifier. POST /revisions.info
outline_post_revisions_listREADList all revisions. List all revisions for a specific document. Revisions represent historical snapshots of a document's content and can be used to track changes over time. The `data` and `text` fields are omitted from listed revisions for performance; use `revisions.info` to retrieve the full content of a specific revision. POST /revisions.list
outline_post_shares_createWRITECreate a share. Creates a new share link that can be used by to access a document or collection. If you request multiple shares for the same resource with the same API key, the same share object will be returned. By default all shares are unpublished. Exactly one of `documentId` or `collectionId` must be provided. POST /shares.create
outline_post_shares_infoREADRetrieve a share object. Retrieve the details of a share link by its unique identifier or by the associated document ID. Shares allow documents to be accessed publicly or by specific users. POST /shares.info
outline_post_shares_listREADList all shares. List all share links in the workspace. POST /shares.list
outline_post_shares_revokeWRITERevoke a share. Makes the share link inactive so that it can no longer be used to access the document. POST /shares.revoke
outline_post_shares_updateWRITEUpdate a share. Allows changing an existing share's published status, which removes authentication and makes it available to anyone with the link. POST /shares.update
outline_post_stars_createWRITECreate a star. Stars a document or collection so it appears in the users sidebar. One of either `documentId` or `collectionId` must be provided. POST /stars.create
outline_post_stars_deleteWRITEDelete a star. Remove a star from a document, removing it from the user's starred documents list in the sidebar. POST /stars.delete
outline_post_stars_listREADList all stars. List all starred documents for the authenticated user. Stars allow users to bookmark important documents for quick access in the sidebar. POST /stars.list
outline_post_stars_updateWRITEUpdate a stars order in the sidebar. Update the position of a starred document in the sidebar. The index parameter determines the display order relative to other starred documents. POST /stars.update
outline_post_templates_createWRITECreate a template. Create a new template that can be used as a starting point for new documents. Templates can optionally be scoped to a specific collection. POST /templates.create
outline_post_templates_deleteWRITEDelete a template. Delete a template by its unique identifier. This will soft-delete the template, it can be restored later. POST /templates.delete
outline_post_templates_duplicateWRITEDuplicate a template. Create a copy of an existing template. Optionally override the title and target collection. POST /templates.duplicate
outline_post_templates_infoREADRetrieve a template. Retrieve a template by its unique identifier. POST /templates.info
outline_post_templates_listREADList all templates. List all templates available to the current user. Optionally filter by collection. Templates not associated with a collection are workspace-wide. POST /templates.list
outline_post_templates_restoreWRITERestore a template. Restore a previously deleted template by its unique identifier. POST /templates.restore
outline_post_templates_updateWRITEUpdate a template. Update an existing template by its unique identifier. POST /templates.update
outline_post_users_activateWRITEActivate a user. Activating a previously suspended user allows them to signin again. Users that are activated will cause billing totals to be re-calculated in the hosted version. POST /users.activate
outline_post_users_deleteWRITEDelete a user. Deleting a user removes the object entirely. In almost every circumstance it is preferable to suspend a user, as a deleted user can be recreated by signing in with SSO again. POST /users.delete
outline_post_users_infoREADRetrieve a user. Retrieve the details of a user by their unique identifier, including their name, email, avatar, and role within the workspace. POST /users.info
outline_post_users_inviteWRITEInvite users. Send email invitations to one or more users to join the workspace. Invitations include a link to create an account and join the workspace. POST /users.invite
outline_post_users_listREADList all users. List and filter all the users in the workspace POST /users.list
outline_post_users_suspendWRITESuspend a user. Suspending a user prevents the user from signing in. Users that are suspended are also not counted against billing totals in the hosted version. POST /users.suspend
outline_post_users_updateWRITEUpdate a user. Update a users name or avatar. If no `id` is passed then the user associated with the authentication will be updated by default. POST /users.update
outline_post_users_update_roleWRITEChange a users role. Change the role of a user, only available to admin authorization. POST /users.update_role
outline_post_views_createWRITECreate a view. Creates a new view for a document. This is documented in the interests of thoroughness however it is recommended that views are not created from outside of the Outline UI. POST /views.create
outline_post_views_listREADList all views. List all users that have viewed a document and the overall view count. POST /views.list
Put Outline behind one governed endpoint.
Same permissions, same audit trail, whatever else you connect next.