Gateway Specification

View as Markdown

The Content Gateway API lets you integrate custom content systems with Moveworks Assistant Search. You provide the APIs — Moveworks handles data ingestion pipelines, polling, efficient diffing, retries, and search indexing.

For the full interactive API reference with try-it functionality, see the Content Gateway API Reference.

Files

These endpoints handle content retrieval, metadata, and file downloads.

List files

Retrieve files in a specific node with support for querying, filtering, and pagination. Returns navigational information including parent folder details and direct download URLs.

GET
/v1/files
1curl https://content-gateway-example.com/v1/files
Response
1{
2 "@odata.context": "https://content-gateway-example.com/v1/$metadata#Content",
3 "value": [
4 {
5 "id": "12345",
6 "name": "Document or Folder Name",
7 "last_modified_datetime": "2023-04-17T12:34:56Z",
8 "external_url": "https://intranet.example.com/files/AnnualReport2024.pdf",
9 "status": "active",
10 "custom_attributes": {},
11 "last_modified_by": "john_doe@abc.com",
12 "created_datetime": "2023-01-01T00:00:00Z",
13 "created_by": "jane_doe@abc.com",
14 "metadata_url": "https://intranet.example.com/content/files/<file_id>",
15 "content": {
16 "mime_type": "application/pdf",
17 "download_path": "/12345/download",
18 "size": 102400,
19 "sha1_hash": "2fd4e1c67a2d28fced849ee1bb76e7391b93eb12"
20 },
21 "parent_info": {
22 "id": "parent123",
23 "name": "Parent Node Name",
24 "path": "/reports/2023"
25 },
26 "children_url": "https://content-gateway-example.com/v1/content/files?$filter=(folder eq 12345)"
27 }
28 ],
29 "@odata.nextLink": "https://content-gateway-example.com/v1/content?$filter=(category in (retail, sales) and file_type in (pdf, docx))&$top=10&$skip=10&$orderby=createdDateTime desc"
30}

Get file metadata

Retrieve metadata and content for a specific file. When the content type is HTML, this endpoint returns the actual HTML content in the response body. For other file types, it provides download path information.

GET
/v1/files/:id
1curl https://content-gateway-example.com/v1/files/id

Download file

Download the full media file by ID. A checksum is provided to validate the integrity of the downloaded file.

GET
/v1/files/:id/download
1curl https://content-gateway-example.com/v1/files/id/download

Permissions

These endpoints define how Moveworks evaluates access control for ingested content.

Get permission model metadata

Returns the current permission evaluation model for the gateway.

GET
/v1/files/permissions/metadata
1curl https://content-gateway-example.com/v1/files/permissions/metadata

Get content permissions

Returns all user and group permissions on a specific content item.

GET
/v1/files/:id/permissions
1curl https://content-gateway-example.com/v1/files/id/permissions
Response
1{
2 "@odata.context": "string",
3 "value": {
4 "permissions": [
5 {
6 "type": "USER",
7 "id": "string",
8 "action": "VIEW"
9 }
10 ],
11 "permissions_hierarchy": [
12 "string"
13 ],
14 "last_modified_datetime": "string"
15 },
16 "@odata.nextLink": "string"
17}

Users & Groups

These endpoints provide identity resolution for permission evaluation.

List users

Retrieve a paginated list of users using OData query parameters.

GET
/export/v1/records/users
1curl https://api.moveworks.ai/export/v1/records/users \
2 -H "Authorization: <apiKey>"

List groups

Retrieve a paginated list of groups using OData query parameters.

GET
/v1/groups
1curl https://content-gateway-example.com/v1/groups

List group members

List direct members (users or groups) of a specific group.

GET
/v1/groups/:groupId/members
1curl https://content-gateway-example.com/v1/groups/groupId/members