# Workspaces

​ A workspace is a collaboration context for the two involved parties. At least one party must be authorized to create a workspace and invite another party to it. The workspace becomes a shared place for the electronic documents and catalogs created by these parties and either one can view the objects that are created within it.

# Data Model

All entities used for this API follow canonical Entity Envelope data format. Below is the workspace entity body schema.

Field Type Description
description string User-friendly textual description of the workspace.
parties object A list of workspace parties.
parties.client.id reference Reference to the client's record in the Bridge Organization registry.
parties.client.xref string
parties.vendor.id reference Reference to the vendors's record in the Bridge Organization registry.
parties.vendor.xref string

# Example Body

{
  "description": "Workspace 1",
  "parties": {
    "client": {
      "id": "8d5ad423-bfdd-4b66-a6de-0cde92707f54",
      "xref": "abcd"
    },
    "vendor": {
      "id": "32c2798a-1aae-4398-b12e-65e99effaaa2",
      "xref": "2345"
    }
  }
}

# Search Workspaces

GET /v2/workspaces

# Query parameters

​Parameter Description Type Required Default
limit Maximum number of records to return integer no 25
offset The number of records to skip integer no 0
sort List of comma-separated ordering criteria string: field:asc|desc no "created_at:desc, id:asc"
filter[body.parties.client.id] Client organization ID. UUID no
filter[body.parties.vendor.id] Vendor organization ID. UUID no
filter[body.description] Workspace description. UUID no

# Request body

None

# Response

An array of entity envelopes with the type set to navarik.bridge.workspace and the body formatted to the workspace model.

# Create Workspace

POST /v2/workspaces

# Query parameters

None

# Request body

See data model

# Response

A single entity envelope with the type set to navarik.bridge.workspace and the body formatted to the workspace model.

# Get Workspace by ID

​ Retrieves the details of an existing workspace. You need only supply the unique workspace identifier that was returned upon workspace creation.

GET /v2/workspaces/{workspace_id}

# Request parameters

Parameter Description Type Required Default
workspace_id Workspace id UUID yes

# Request body

None

# Response

A single entity envelope with the type set to navarik.bridge.workspace and the body formatted to the workspace model.

# Update Workspace

​ Updates the specified customer by setting the values of the parameters passed. Any parameters not provided will be left unchanged.

PATCH /v2/workspaces/{workspace_id}

# Request parameters

Parameter Description Type Required Default
workspace_id Workspace id UUID yes

# Request body

Parameter Description Type Required Default
body Changes to the entity body. object yes
body.description Workspace description. string no

Note: Parties are not allowed to be updated. Attempting to update workspace parties causes no errors, but produces no changes.

# Response

A single entity envelope with the type set to navarik.bridge.workspace and the body formatted to the workspace model.

# Delete Workspace

​ Permanently deletes a workspace. It cannot be undone.

DELETE /v2/workspaces/{workspace_id}

# Request parameters

Parameter Description Type Required Default
workspace_id Workspace id UUID yes

# Request body

None

# Response

The latest known version of deleted workspace as a single entity envelope with the type set to navarik.bridge.workspace and the body formatted to the workspace model.

A workspace containing documents cannot be deleted and returns an error Workspace is not empty. Deleting a workspace with an invalid id returns a 404 error.