Skip to content

Sync Workspace API (1.0.0)

Sync Workspace API

Workspace-specific services for content management, project organization, and file processing.

Workspace Services

The Workspace APIs allow access to the resources contained within Workspaces and Dataspaces. Although Workspaces and Dataspaces are distinct, Dataspaces have no compute of their own, so operations on Dataspace resources must always be performed through a chosen workspace. Workspaces are bundled, fully-managed computational services used to: - Upload, process, and manage content files - Search and retrieve content with advanced filtering - Query content using AI with library citations and web search integration - Run AI workflows on the content - Organize content into projects according to business workflows - Generate file derivatives (images, thumbnails) and extract metadata - Handle content indexing with automated categorization

Content Processing

When files are uploaded, they undergo asynchronous processing which may include: - Virus scanning and security validation - File format conversion and derivative generation (TIFF, JPEG thumbnails) - Automated metadata extraction using AI - Content categorization and indexing according to dataspace ontology Processing status can be tracked using the Workflow Execution API.

Projects vs Content Organization

  • Content: Individual files with metadata, organized by categories defined in the dataspace ontology - Projects: Business workflow containers that group disparate content items according to business rules (e.g., application packets, case files)

Authentication

All endpoints require authentication using a bearer token.

Overview
License
Languages
Servers
Mock server
https://docs.syncdocs.ai/_mock/api/workspace-openapi/
Production - Workspace Services
https://{workspaceId}.syncdocs.ai/api/
Development server
https://docs.syncdocs.ai/api/

Content

Content management operations. Handle file uploads, processing, metadata extraction, and content retrieval with advanced filtering capabilities.

Operations

Projects

Project management operations. Projects group content items according to business workflows and processes.

Operations

Create a new project

Request

Security
bearerAuth
Path
dataspaceIdstring^sds-[a-z0-9]{8}$required

Short dataspace ID with sds- prefix

Bodyapplication/json
namestringnon-emptyrequired

Name of the project

Example: "My Research Project"
descriptionstringnon-emptyrequired

Description of the project

Example: "A comprehensive research project on data analysis"
dataspaceIdstring^sds-[a-z0-9]{8}$required

Short dataspace ID with sds- prefix

Example: "sds-abc12345"
curl -i -X POST \
  'https://docs.syncdocs.ai/_mock/api/workspace-openapi/projects/{dataspaceId}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "My Research Project",
    "description": "A comprehensive research project on data analysis",
    "dataspaceId": "sds-abc12345"
  }'

Responses

Project created successfully

Bodyapplication/json
projectIdstring(uuid)required
Example: "123e4567-e89b-12d3-a456-426614174000"
namestringrequired
Example: "My Research Project"
descriptionstringrequired
Example: "A comprehensive research project on data analysis"
dataspaceIdstring^sds-[a-z0-9]{8}$required

Short dataspace ID with sds- prefix

Example: "sds-abc12345"
createdAtstring(date-time)required
Example: "2024-01-15T10:30:00Z"
updatedAtstring or null(date-time)required
Example: "2024-01-15T14:30:00Z"
Response
application/json
{ "projectId": "123e4567-e89b-12d3-a456-426614174000", "name": "My Research Project", "description": "A comprehensive research project on data analysis", "dataspaceId": "sds-abc12345", "createdAt": "2024-01-15T10:30:00Z", "updatedAt": "2024-01-15T14:30:00Z" }

List all projects in a dataspace

Request

Security
bearerAuth
Path
dataspaceIdstring^sds-[a-z0-9]{8}$required

Short dataspace ID with sds- prefix

curl -i -X GET \
  'https://docs.syncdocs.ai/_mock/api/workspace-openapi/projects/{dataspaceId}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

List of projects

Bodyapplication/jsonArray [
projectIdstring(uuid)required
Example: "123e4567-e89b-12d3-a456-426614174000"
namestringrequired
Example: "My Research Project"
descriptionstringrequired
Example: "A comprehensive research project on data analysis"
dataspaceIdstring^sds-[a-z0-9]{8}$required

Short dataspace ID with sds- prefix

Example: "sds-abc12345"
createdAtstring(date-time)required
Example: "2024-01-15T10:30:00Z"
updatedAtstring or null(date-time)required
Example: "2024-01-15T14:30:00Z"
]
Response
application/json
[ { "projectId": "123e4567-e89b-12d3-a456-426614174000", "name": "My Research Project", "description": "A comprehensive research project on data analysis", "dataspaceId": "sds-abc12345", "createdAt": "2024-01-15T10:30:00Z", "updatedAt": "2024-01-15T14:30:00Z" } ]

Get a project by ID

Request

Security
bearerAuth
Path
dataspaceIdstring^sds-[a-z0-9]{8}$required

Short dataspace ID with sds- prefix

projectIdstring(uuid)required

UUID of the project

curl -i -X GET \
  'https://docs.syncdocs.ai/_mock/api/workspace-openapi/projects/{dataspaceId}/{projectId}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Project details

Bodyapplication/json
projectIdstring(uuid)required
Example: "123e4567-e89b-12d3-a456-426614174000"
namestringrequired
Example: "My Research Project"
descriptionstringrequired
Example: "A comprehensive research project on data analysis"
dataspaceIdstring^sds-[a-z0-9]{8}$required

Short dataspace ID with sds- prefix

Example: "sds-abc12345"
createdAtstring(date-time)required
Example: "2024-01-15T10:30:00Z"
updatedAtstring or null(date-time)required
Example: "2024-01-15T14:30:00Z"
Response
application/json
{ "projectId": "123e4567-e89b-12d3-a456-426614174000", "name": "My Research Project", "description": "A comprehensive research project on data analysis", "dataspaceId": "sds-abc12345", "createdAt": "2024-01-15T10:30:00Z", "updatedAt": "2024-01-15T14:30:00Z" }

Update a project

Request

Security
bearerAuth
Path
dataspaceIdstring^sds-[a-z0-9]{8}$required

Short dataspace ID with sds- prefix

projectIdstring(uuid)required

UUID of the project

Bodyapplication/json
namestringnon-empty

Name of the project

Example: "Updated Project Name"
descriptionstringnon-empty

Description of the project

Example: "Updated project description"
curl -i -X PUT \
  'https://docs.syncdocs.ai/_mock/api/workspace-openapi/projects/{dataspaceId}/{projectId}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "Updated Project Name",
    "description": "Updated project description"
  }'

Responses

Project updated successfully

Bodyapplication/json
projectIdstring(uuid)required
Example: "123e4567-e89b-12d3-a456-426614174000"
namestringrequired
Example: "My Research Project"
descriptionstringrequired
Example: "A comprehensive research project on data analysis"
dataspaceIdstring^sds-[a-z0-9]{8}$required

Short dataspace ID with sds- prefix

Example: "sds-abc12345"
createdAtstring(date-time)required
Example: "2024-01-15T10:30:00Z"
updatedAtstring or null(date-time)required
Example: "2024-01-15T14:30:00Z"
Response
application/json
{ "projectId": "123e4567-e89b-12d3-a456-426614174000", "name": "My Research Project", "description": "A comprehensive research project on data analysis", "dataspaceId": "sds-abc12345", "createdAt": "2024-01-15T10:30:00Z", "updatedAt": "2024-01-15T14:30:00Z" }

Delete a project

Request

Security
bearerAuth
Path
dataspaceIdstring^sds-[a-z0-9]{8}$required

Short dataspace ID with sds- prefix

projectIdstring(uuid)required

UUID of the project

curl -i -X DELETE \
  'https://docs.syncdocs.ai/_mock/api/workspace-openapi/projects/{dataspaceId}/{projectId}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Project deleted successfully

Associate content with a project

Request

Security
bearerAuth
Path
dataspaceIdstring^sds-[a-z0-9]{8}$required

Short dataspace ID with sds- prefix

projectIdstring(uuid)required

UUID of the project

contentIdstring(uuid)required

UUID of the content

curl -i -X PUT \
  'https://docs.syncdocs.ai/_mock/api/workspace-openapi/projects/{dataspaceId}/{projectId}/content/{contentId}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Content associated successfully

Dissociate content from a project

Request

Security
bearerAuth
Path
dataspaceIdstring^sds-[a-z0-9]{8}$required

Short dataspace ID with sds- prefix

projectIdstring(uuid)required

UUID of the project

contentIdstring(uuid)required

UUID of the content

curl -i -X DELETE \
  'https://docs.syncdocs.ai/_mock/api/workspace-openapi/projects/{dataspaceId}/{projectId}/content/{contentId}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Content dissociated successfully

Get all content associated with a project

Request

Security
bearerAuth
Path
dataspaceIdstring^sds-[a-z0-9]{8}$required

Short dataspace ID with sds- prefix

projectIdstring(uuid)required

UUID of the project

curl -i -X GET \
  'https://docs.syncdocs.ai/_mock/api/workspace-openapi/projects/{dataspaceId}/{projectId}/content' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

List of content IDs associated with the project

Bodyapplication/json
contentIdsArray of strings(uuid)required
Response
application/json
{ "contentIds": [ "497f6eca-6276-4993-bfeb-53cbbbba6f08" ] }

Workflow Executions

Workflow execution monitoring operations. Track the status and progress of AI workflow executions on content.

Operations

Batch Workflow Executions

Batch workflow execution operations. Execute workflows on multiple content items based on filters across multiple dataspaces.

Operations

Task Executions

Task execution monitoring operations. Track individual task executions within workflows and retrieve their outputs.

Operations

Task Execution Outputs

Task execution output retrieval operations. Access the results and outputs generated by completed task executions.

Operations

Registered Workflows

Registered workflow operations. Access workflows cached from sync-apis for fast lookup during workflow execution.

Operations

Query Logs

Query logging and retrieval operations. Track and analyze API operations performed on resources with detailed audit trails.

Operations

Content Upload Sessions

Content upload session management operations. Handle reliable file uploads through chunked upload sessions with progress tracking.

Operations