Read file content
const url = 'https://api.inside.chat/api/v1/files/example/content?conversation_id=example&message_id=example&include_internal=false&offset=0&length=65536';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api.inside.chat/api/v1/files/example/content?conversation_id=example&message_id=example&include_internal=false&offset=0&length=65536' \ --header 'Authorization: Bearer <token>'Required scopes:
file_read,conversation_read,message_content_read,contact_read_pii
Data access:message_content,pii
MCP tool:file_content
Note:include_internaladdsinternal_notes_read
Read up to 65536 file bytes for an exact permitted message as base64. Requires file/transcript grants and restrictions; internal notes need opt-in. Every range is reauthorized; pin the returned version for continuation. No storage URL, upload or automatic paging.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Query Parameters
Section titled “Query Parameters”Optional; if present must match the resource owner.
Explicitly include stored internal messages. Requires internal_notes_read and the internal_notes data flag in addition to all transcript grants. Default is public messages only.
Canonical signed 64 decimal byte offset; a positive offset requires expected_version from the preceding range.
Pin the file version for every continuation. A changed version is unavailable; explicitly restart at offset zero to choose a new version.
Header Parameters
Section titled “Header Parameters”One canonical closed bytes=start-end range of at most 65536 bytes, requiring binary Accept. Query offset/length must agree. Suffix, open and multiple ranges are unsupported. Positive start requires expected_version or If-Match.
One quoted opaque file version from ETag. Intersects expected_version when both are present. Weak, wildcard and multiple tags are unsupported. An authorized version mismatch returns 412 without content.
Responses
Section titled “Responses”Authorized result. Projection depends on current scopes and data policy.
object
object
Example
{ "data": { "visibility": "public", "coverage": "stored_attachment_content_range" }}Headers
Section titled “Headers”Binary only: quoted opaque version; pass its unquoted value as expected_version on continuation.
Binary only: selected decimal byte offset.
Binary only: exact decimal total file size.
Binary only: continue at this decimal offset; absent at EOF.
Binary only: SHA256 of the selected bytes.
The verified requested bounded HTTP byte range; actual end is clipped at file EOF.
Headers
Section titled “Headers”Binary only: quoted opaque version; pass its unquoted value as expected_version on continuation.
Binary only: selected decimal byte offset.
Binary only: exact decimal total file size.
Binary only: continue at this decimal offset; absent at EOF.
Binary only: SHA256 of the selected bytes.
Invalid, duplicate or unsupported request parameters.
Missing, expired or revoked installation credential.
Resource not found or not permitted by current authority.
No acceptable JSON or binary representation. Errors always use problem JSON.
Explicit expected_version no longer matches the authorized file; no content.
The supplied If-Match file version no longer matches; no content.
The requested offset has no authorized bytes. An empty-file HTTP range includes Content-Range: bytes */0; no content or file headers.
The requested capability is not available for application installations.
Per-app quota exceeded.
Headers
Section titled “Headers”Enrollment, native service or required authority is unavailable.