Change a user's access role
const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({role: 'collaborator'})
};
fetch('https://api.factify.com/v1/documents/{document_id}/sharing/{user_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"type": "about:blank",
"title": "Bad Request",
"status": 400,
"detail": "Request body is malformed or missing required fields."
}Share
Change a user's access role
Changes a recipient’s role on a document (e.g., viewer → editor).
The user must already have explicit access; use grantAccess to
add new recipients.
PATCH
/
v1
/
documents
/
{document_id}
/
sharing
/
{user_id}
Change a user's access role
const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({role: 'collaborator'})
};
fetch('https://api.factify.com/v1/documents/{document_id}/sharing/{user_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"type": "about:blank",
"title": "Bad Request",
"status": 400,
"detail": "Request body is malformed or missing required fields."
}Documentation Index
Fetch the complete documentation index at: https://developers.factify.com/llms.txt
Use this file to discover all available pages before exploring further.
Authorizations
Bearer authentication using a factapi-issued API key
(ffy_<env>_<base32_uuid><base62_random>). Cookie-based
sessions are accepted automatically by user-facing endpoints
but are not surfaced as an OpenAPI auth scheme.
Path Parameters
Document ID
Example:
"doc_01h2xcejqtf2nbrexx3vqjhp41"
User ID to update
Example:
"usr_01h2xcejqtf2nbrexx3vqjhp41"
Body
application/json
New access role
Available options:
admin, collaborator, commenter, viewer Example:
"collaborator"
Response
No Content
⌘I