Satchel API (1.0.3)

Download OpenAPI specification:Download

API documentation for Satchel application

Workspaces

Operations about workspaces

List Workspaces

Retrieves all workspaces where the authenticated user has been accepted

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a new workspace

Authorizations:
bearerAuth
Request Body schema: application/json
required
title
required
string [ 1 .. 255 ] characters

Title of the workspace

icon
string

Icon identifier (when icon_type is 'icon')

icon_type
string
Enum: "icon" "image" "emoji"

Type of icon being used

icon_file
string (Base64Image) ^data:image/(jpeg|png|gif|webp);base64,[A-Za-...

Base64 encoded image file in data URL format (when icon_type is 'image')

commentary_json
string <json>

JSON string containing Tiptap formatted content

cover_url
string <uri>

URL for the workspace cover image

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "icon": "string",
  • "icon_type": "icon",
  • "icon_file": "data:image/jpeg;base64,/9j/4AAQSkZJRg...",
  • "commentary_json": "string",
  • "cover_url": "http://example.com"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "cover_url": "string",
  • "commentary_txt": "string",
  • "commentary_html": "string",
  • "commentary_json": { },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "role": "string",
  • "permissions": 0,
  • "subscription": { },
  • "rooms": [
    ],
  • "users": [
    ],
  • "type": "workspace"
}

Get Workspace

Retrieves a specific workspace by ID

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Workspace ID

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "cover_url": "string",
  • "commentary_txt": "string",
  • "commentary_html": "string",
  • "commentary_json": { },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "role": "string",
  • "permissions": 0,
  • "subscription": { },
  • "rooms": [
    ],
  • "users": [
    ],
  • "type": "workspace"
}

Update Workspace

Updates an existing workspace

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Workspace ID

Request Body schema: application/json
required
title
string
icon
string
icon_type
string
icon_file
string <base64>
commentary_json
object
cover_url
string

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "icon_file": "string",
  • "commentary_json": { },
  • "cover_url": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "cover_url": "string",
  • "commentary_txt": "string",
  • "commentary_html": "string",
  • "commentary_json": { },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "role": "string",
  • "permissions": 0,
  • "subscription": { },
  • "rooms": [
    ],
  • "users": [
    ],
  • "type": "workspace"
}

Delete Workspace

Deletes a workspace

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Workspace ID

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "deleted": true
}

Get Workspace Usage

Retrieves usage statistics for a workspace

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Workspace ID

Responses

Response samples

Content type
application/json
{
  • "admins": {
    },
  • "members": {
    },
  • "guests": {
    },
  • "storage": {
    }
}

Rooms

Operations about rooms

List Workspace Rooms

Retrieves all rooms in a workspace that the user has access to

Authorizations:
bearerAuth
path Parameters
workspace_id
required
string <uuid>

Workspace ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Room

Creates a new room

Authorizations:
bearerAuth
Request Body schema: application/json
required
title
required
string

Title of the room

workspace_id
required
string <uuid>

ID of the workspace to create the room in

icon
string

Icon identifier or URL

icon_type
string

Type of icon used

icon_file
string <base64>

Base64 encoded icon file

commentary_json
object

JSON version of room commentary

cover_url
string

URL to the room cover image

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
  • "icon": "string",
  • "icon_type": "string",
  • "icon_file": "string",
  • "commentary_json": { },
  • "cover_url": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "cover_url": "string",
  • "commentary_txt": "string",
  • "commentary_html": "string",
  • "commentary_json": { },
  • "created_at": "2019-08-24T14:15:22Z",
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
  • "packs": [
    ],
  • "users": [
    ],
  • "permissions": 0,
  • "role": "string",
  • "type": "room"
}

Get Room

Retrieves a specific room by ID

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Room ID

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "cover_url": "string",
  • "commentary_txt": "string",
  • "commentary_html": "string",
  • "commentary_json": { },
  • "created_at": "2019-08-24T14:15:22Z",
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
  • "packs": [
    ],
  • "users": [
    ],
  • "permissions": 0,
  • "role": "string",
  • "type": "room"
}

Update Room

Updates an existing room

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Room ID

Request Body schema: application/json
required
title
string
icon
string
icon_type
string
icon_file
string <base64>
commentary_json
object
cover_url
string

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "icon_file": "string",
  • "commentary_json": { },
  • "cover_url": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "cover_url": "string",
  • "commentary_txt": "string",
  • "commentary_html": "string",
  • "commentary_json": { },
  • "created_at": "2019-08-24T14:15:22Z",
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
  • "packs": [
    ],
  • "users": [
    ],
  • "permissions": 0,
  • "role": "string",
  • "type": "room"
}

Delete Room

Deletes a room

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Room ID

Responses

Packs

Operations about packs

List Room Packs

Retrieves all packs in a room that the user has access to

Authorizations:
bearerAuth
path Parameters
room_id
required
string <uuid>

Room ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Pack

Creates a new pack

Authorizations:
bearerAuth
Request Body schema: application/json
required
title
required
string

Title of the pack

room_id
required
string <uuid>

ID of the room to create the pack in

icon
string

Icon identifier or URL

icon_type
string

Type of icon used

icon_file
string <base64>

Base64 encoded icon file

commentary_json
object

JSON version of pack commentary

cover_url
string

URL to the pack cover image

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "room_id": "05451321-18e1-4bfa-aa22-dfd0080cc120",
  • "icon": "string",
  • "icon_type": "string",
  • "icon_file": "string",
  • "commentary_json": { },
  • "cover_url": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "cover_url": "string",
  • "commentary_txt": "string",
  • "commentary_html": "string",
  • "commentary_json": { },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "published_at": "2019-08-24T14:15:22Z",
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
  • "room_id": "05451321-18e1-4bfa-aa22-dfd0080cc120",
  • "resources": [
    ],
  • "permissions": 0,
  • "role": "string",
  • "type": "pack"
}

Get Pack

Retrieves a specific pack by ID

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Pack ID

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "cover_url": "string",
  • "commentary_txt": "string",
  • "commentary_html": "string",
  • "commentary_json": { },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "published_at": "2019-08-24T14:15:22Z",
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
  • "room_id": "05451321-18e1-4bfa-aa22-dfd0080cc120",
  • "resources": [
    ],
  • "permissions": 0,
  • "role": "string",
  • "type": "pack"
}

Update Pack

Updates an existing pack

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Pack ID

Request Body schema: application/json
required
title
string
icon
string
icon_type
string
icon_file
string <base64>
commentary_json
object
cover_url
string

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "icon_file": "string",
  • "commentary_json": { },
  • "cover_url": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "cover_url": "string",
  • "commentary_txt": "string",
  • "commentary_html": "string",
  • "commentary_json": { },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "published_at": "2019-08-24T14:15:22Z",
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
  • "room_id": "05451321-18e1-4bfa-aa22-dfd0080cc120",
  • "resources": [
    ],
  • "permissions": 0,
  • "role": "string",
  • "type": "pack"
}

Delete Pack

Deletes a pack

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Pack ID

Responses

Publish Pack

Publishes a pack

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Pack ID

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "cover_url": "string",
  • "commentary_txt": "string",
  • "commentary_html": "string",
  • "commentary_json": { },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "published_at": "2019-08-24T14:15:22Z",
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
  • "room_id": "05451321-18e1-4bfa-aa22-dfd0080cc120",
  • "resources": [
    ],
  • "permissions": 0,
  • "role": "string",
  • "type": "pack"
}

Unpublish Pack

Unpublishes a pack

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Pack ID

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "cover_url": "string",
  • "commentary_txt": "string",
  • "commentary_html": "string",
  • "commentary_json": { },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "published_at": "2019-08-24T14:15:22Z",
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
  • "room_id": "05451321-18e1-4bfa-aa22-dfd0080cc120",
  • "resources": [
    ],
  • "permissions": 0,
  • "role": "string",
  • "type": "pack"
}

Resources

Operations about resources

List Pack Resources

Retrieves all resources in a pack

Authorizations:
bearerAuth
path Parameters
pack_id
required
string <uuid>

Pack ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Resource

Creates a new resource

Authorizations:
bearerAuth
Request Body schema: application/json
required
title
required
string

Title of the resource

pack_id
required
string <uuid>

ID of the pack to create the resource in

icon
string

Icon identifier or URL

icon_type
string

Type of icon used

icon_file
string <base64>

Base64 encoded icon file

commentary_json
object

JSON version of resource commentary

cover_url
string

URL to the resource cover image

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "pack_id": "57cc3d41-f96b-4516-a620-a3167d9dc6bf",
  • "icon": "string",
  • "icon_type": "string",
  • "icon_file": "string",
  • "commentary_json": { },
  • "cover_url": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "cover_url": "string",
  • "commentary_txt": "string",
  • "commentary_html": "string",
  • "commentary_json": { },
  • "created_at": "2019-08-24T14:15:22Z",
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
  • "pack_id": "57cc3d41-f96b-4516-a620-a3167d9dc6bf",
  • "version": 0,
  • "cloud_sharing_url": "string",
  • "has_file": true,
  • "has_preview": true,
  • "media": {
    },
  • "permissions": 0,
  • "download_url": "string",
  • "type": "resource"
}

Get Resource

Retrieves a specific resource by ID

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Resource ID

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "cover_url": "string",
  • "commentary_txt": "string",
  • "commentary_html": "string",
  • "commentary_json": { },
  • "created_at": "2019-08-24T14:15:22Z",
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
  • "pack_id": "57cc3d41-f96b-4516-a620-a3167d9dc6bf",
  • "version": 0,
  • "cloud_sharing_url": "string",
  • "has_file": true,
  • "has_preview": true,
  • "media": {
    },
  • "permissions": 0,
  • "download_url": "string",
  • "type": "resource"
}

Update Resource

Updates an existing resource

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Resource ID

Request Body schema: application/json
required
title
string
icon
string
icon_type
string
icon_file
string <base64>
commentary_json
object
cover_url
string

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "icon_file": "string",
  • "commentary_json": { },
  • "cover_url": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "cover_url": "string",
  • "commentary_txt": "string",
  • "commentary_html": "string",
  • "commentary_json": { },
  • "created_at": "2019-08-24T14:15:22Z",
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
  • "pack_id": "57cc3d41-f96b-4516-a620-a3167d9dc6bf",
  • "version": 0,
  • "cloud_sharing_url": "string",
  • "has_file": true,
  • "has_preview": true,
  • "media": {
    },
  • "permissions": 0,
  • "download_url": "string",
  • "type": "resource"
}

Delete Resource

Deletes a resource

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Resource ID

Responses

Download Resource

Downloads a resource file

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Resource ID

Responses

Attach File to Resource

Attaches a file to a resource

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Resource ID

Request Body schema: multipart/form-data
required
file
string <binary>

File to attach

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "cover_url": "string",
  • "commentary_txt": "string",
  • "commentary_html": "string",
  • "commentary_json": { },
  • "created_at": "2019-08-24T14:15:22Z",
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
  • "pack_id": "57cc3d41-f96b-4516-a620-a3167d9dc6bf",
  • "version": 0,
  • "cloud_sharing_url": "string",
  • "has_file": true,
  • "has_preview": true,
  • "media": {
    },
  • "permissions": 0,
  • "download_url": "string",
  • "type": "resource"
}

Detach File from Resource

Detaches a file from a resource

Authorizations:
bearerAuth
path Parameters
id
required
string <uuid>

Resource ID

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "title": "string",
  • "icon": "string",
  • "icon_type": "string",
  • "cover_url": "string",
  • "commentary_txt": "string",
  • "commentary_html": "string",
  • "commentary_json": { },
  • "created_at": "2019-08-24T14:15:22Z",
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9",
  • "pack_id": "57cc3d41-f96b-4516-a620-a3167d9dc6bf",
  • "version": 0,
  • "cloud_sharing_url": "string",
  • "has_file": true,
  • "has_preview": true,
  • "media": {
    },
  • "permissions": 0,
  • "download_url": "string",
  • "type": "resource"
}

Users

Operations about users