openapi: 3.1.0
info:
title: DUST API
description: DUST Platform API
version: 2026.7.4
servers:
- url: https://apid.dustid.io
description: DUST API for trusted provenance.
security:
- Bearer: []
components:
securitySchemes:
Bearer:
type: http
scheme: bearer
bearerFormat: JWT
description: JWT issued by the DUST auth service. Obtain one by exchanging a Service Account API key (`GET /api/auth/token`
with the key header) or via the OAuth2 `client_credentials` grant. Tokens are short-lived; re-exchange on expiry.
schemas:
HealthResponse:
type: object
properties:
status:
const: ok
timestamp:
type: string
required:
- status
- timestamp
HealthErrorResponse:
type: object
properties:
status:
const: error
timestamp:
type: string
required:
- status
- timestamp
MeFeatureFlagsResponse:
type: object
properties:
is_assemblies_module_enabled:
type: boolean
is_assembly_import_enabled:
type: boolean
is_categories_module_enabled:
type: boolean
is_certificates_module_enabled:
type: boolean
is_developer_tooling_enabled:
type: boolean
is_document_validation_enabled:
type: boolean
is_fabric_alt_views_enabled:
type: boolean
is_fusion_module_enabled:
type: boolean
is_group_connections_enabled:
type: boolean
is_identifiable_dust_enabled:
type: boolean
is_organization_management_enabled:
type: boolean
is_sharing_enabled:
type: boolean
is_show_uncategorized_threads_enabled:
type: boolean
is_slicing_module_enabled:
type: boolean
is_transfers_module_enabled:
type: boolean
is_verify_only_enabled:
type: boolean
is_workflows_quick_create_enabled:
type: boolean
required:
- is_assemblies_module_enabled
- is_assembly_import_enabled
- is_categories_module_enabled
- is_certificates_module_enabled
- is_developer_tooling_enabled
- is_document_validation_enabled
- is_fabric_alt_views_enabled
- is_fusion_module_enabled
- is_group_connections_enabled
- is_identifiable_dust_enabled
- is_organization_management_enabled
- is_sharing_enabled
- is_show_uncategorized_threads_enabled
- is_slicing_module_enabled
- is_transfers_module_enabled
- is_verify_only_enabled
- is_workflows_quick_create_enabled
MeResponse:
type: object
properties:
activeOrganizationId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
email:
type: string
organizations:
type: array
items:
type: object
properties:
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
name:
type: string
roles:
type: array
items:
type: string
slug:
type: string
required:
- id
- name
- roles
- slug
sessionId:
type: string
userId:
type: string
familyName:
type: string
givenName:
type: string
name:
type: string
required:
- activeOrganizationId
- email
- organizations
- sessionId
- userId
AssemblyListItem:
type: object
properties:
parentAssemblyId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
partCount:
type: number
subAssemblyCount:
type: number
thread:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
required:
- parentAssemblyId
- partCount
- subAssemblyCount
- thread
AssemblyListResponse:
type: object
properties:
assemblies:
type: array
items:
$ref: '#/components/schemas/AssemblyListItem'
required:
- assemblies
AssemblyChild:
type: object
properties:
partCount:
type: number
subAssemblyCount:
type: number
thread:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
relation:
anyOf:
- const: default
- const: private
- type: 'null'
required:
- partCount
- subAssemblyCount
- thread
AssemblyChildrenResponse:
type: object
properties:
parts:
type: array
items:
$ref: '#/components/schemas/AssemblyChild'
required:
- parts
AttachPartRequest:
type: object
properties:
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
relation:
enum:
- default
- private
required:
- threadId
DetachPartRequest:
type: object
properties:
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- threadId
SetPartProtectionRequest:
type: object
properties:
relation:
enum:
- default
- private
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- relation
- threadId
SetThreadFieldRequest:
type: object
properties:
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
name:
anyOf:
- type: string
- type: 'null'
required:
- threadId
ConvertThreadKindRequest:
type: object
properties:
kind:
enum:
- assembly
- unit
required:
- kind
RolledUpPart:
type: object
properties:
assemblyId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
assetCounts:
type: object
properties:
fields:
type: number
resources:
type: number
tags:
type: number
required:
- fields
- resources
- tags
depth:
type: number
thread:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
positionName:
anyOf:
- type: string
- type: 'null'
relation:
anyOf:
- const: default
- const: private
- type: 'null'
required:
- assemblyId
- assetCounts
- depth
- thread
RolledUpPartsResponse:
type: object
properties:
parts:
type: array
items:
$ref: '#/components/schemas/RolledUpPart'
required:
- parts
BundleResponse:
type: object
properties:
bundleId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
childOfId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
kind:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
hasChildren:
type: boolean
idPath:
type: array
items:
type: string
isSharedOut:
type: boolean
path:
type: array
items:
type: string
permissions:
type: object
properties:
can_edit:
type: boolean
default: false
can_publish:
type: boolean
default: false
can_share:
type: boolean
default: false
can_transfer:
type: boolean
default: false
can_view:
type: boolean
default: false
threadCount:
type: number
required:
- bundleId
- childOfId
- createdAt
- description
- kind
- name
- ownerId
- updatedAt
BundleListResponse:
type: object
properties:
bundles:
type: array
items:
$ref: '#/components/schemas/BundleResponse'
next:
type: string
description: Next cursor if available
prev:
type: string
description: Previous cursor if available
required:
- bundles
BundleChildrenResponse:
type: object
properties:
bundles:
type: array
items:
$ref: '#/components/schemas/BundleResponse'
required:
- bundles
BundleCountResponse:
type: object
properties:
total:
type: number
required:
- total
BundleCreateResponse:
type: object
properties:
created:
$ref: '#/components/schemas/BundleResponse'
required:
- created
BundleCreateRequest:
type: object
properties:
name:
type: string
minLength: 1
childOfId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
kind:
enum:
- category
- folder
required:
- name
BundleSetParentRequest:
type: object
properties:
bundleIds:
type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
parentId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
required:
- bundleIds
- parentId
BundleSetParentResponse:
type: object
properties:
updated:
type: array
items:
$ref: '#/components/schemas/BundleResponse'
required:
- updated
BundleUpdateRequest:
type: object
properties:
description:
anyOf:
- type: string
- type: 'null'
name:
type: string
minLength: 1
BundleUpdateResponse:
type: object
properties:
updated:
$ref: '#/components/schemas/BundleResponse'
required:
- updated
ThreadActiveShipment:
type: object
properties:
name:
anyOf:
- type: string
- type: 'null'
operationId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
status:
enum:
- change_request
- draft
- failed_retryable
- processing
- sent
required:
- name
- operationId
- status
Principal:
type: object
properties:
avatar:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
email:
anyOf:
- type: string
- type: 'null'
emailVerified:
anyOf:
- type: boolean
- type: 'null'
familyName:
anyOf:
- type: string
- type: 'null'
kind:
enum:
- human
- service
name:
anyOf:
- type: string
- type: 'null'
phone:
anyOf:
- type: string
- type: 'null'
profileId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
updatedAt:
type: string
userId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- avatar
- createdAt
- email
- emailVerified
- familyName
- kind
- name
- phone
- profileId
- updatedAt
- userId
ThreadFieldResourceValue:
type: object
properties:
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
required:
- resId
ThreadFieldResource:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
enum:
- audio
- doc
- file
- image
- pdf
- video
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldResourceValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldBooleanValue:
type: object
properties:
bool:
type: boolean
required:
- bool
ThreadFieldBoolean:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: boolean
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldBooleanValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldDateValue:
type: object
properties:
date:
type: string
required:
- date
ThreadFieldDate:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: date
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldDateValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldDateRangeValue:
type: object
properties:
from:
type: string
to:
type: string
required:
- from
- to
ThreadFieldDateRange:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: date-range
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldDateRangeValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldDatetimeValue:
type: object
properties:
datetime:
type: string
required:
- datetime
ThreadFieldDatetime:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: date-time
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldDatetimeValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldDurationValue:
type: object
properties:
duration:
type: string
required:
- duration
ThreadFieldDuration:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: duration
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldDurationValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldEmailValue:
type: object
properties:
email:
type: string
required:
- email
ThreadFieldEmail:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: email
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldEmailValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldTextValue:
type: object
properties:
text:
type: string
required:
- text
ThreadFieldLongText:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: long-text
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldTextValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldNumberValue:
type: object
properties:
number:
type: number
maximum: 140737488355327
minimum: -140737488355328
required:
- number
ThreadFieldNumber:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: number
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldNumberValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldJsonValue:
type: object
properties:
json:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
required:
- json
ThreadFieldJson:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: object
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldJsonValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldPhoneValue:
type: object
properties:
phone:
type: string
required:
- phone
ThreadFieldPhone:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: phone
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldPhoneValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldSelectValue:
type: object
properties:
options:
type: array
items:
type: string
selected:
anyOf:
- type: string
- type: 'null'
required:
- options
- selected
ThreadFieldSelect:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: select
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldSelectValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldSelectManyValue:
type: object
properties:
options:
type: array
items:
type: string
selections:
type: array
items:
type: string
required:
- options
- selections
ThreadFieldSelectMany:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: select-many
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldSelectManyValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldTagsValue:
type: object
properties:
tags:
type: array
items:
type: string
required:
- tags
ThreadFieldTags:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: tags
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldTagsValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldText:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: text
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldTextValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldThreadValue:
type: object
properties:
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
required:
- threadId
ThreadFieldThread:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: thread
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldThreadValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldTimeValue:
type: object
properties:
time:
type: string
required:
- time
ThreadFieldTime:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: time
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldTimeValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
ThreadFieldUrlValue:
type: object
properties:
url:
type: string
required:
- url
ThreadFieldUrl:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
defId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sortPriority:
type: integer
maximum: 2147483647
minimum: -2147483648
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
const: url
updatedAt:
type: string
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldUrlValue'
- type: 'null'
required:
- archivedAt
- createdAt
- defId
- description
- fieldId
- isPrivate
- isRequired
- name
- ownerId
- sortPriority
- transferId
- transferredAt
- type
- updatedAt
- value
Resource:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
bucket:
type: string
checksum:
anyOf:
- type: string
maxLength: 64
- type: 'null'
createdAt:
type: string
createdBy:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
filename:
anyOf:
- type: string
- type: 'null'
imageUris:
anyOf:
- type: array
items:
type: string
- type: 'null'
isPrivate:
type: boolean
key:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
mimeType:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
size:
anyOf:
- type: integer
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
thumbnail: {}
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
signatures:
anyOf:
- type: array
items:
type: object
properties:
affiliation:
anyOf:
- type: string
- type: 'null'
authorization:
anyOf:
- type: string
- type: 'null'
date:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
signature:
anyOf:
- type: string
- type: 'null'
signatureHash:
anyOf:
- type: string
- type: 'null'
resource:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
bucket:
type: string
checksum:
anyOf:
- type: string
maxLength: 64
- type: 'null'
createdAt:
type: string
createdBy:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
filename:
anyOf:
- type: string
- type: 'null'
imageUris:
anyOf:
- type: array
items:
type: string
- type: 'null'
isPrivate:
type: boolean
key:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
mimeType:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
size:
anyOf:
- type: integer
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
thumbnail: {}
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- bucket
- checksum
- createdAt
- createdBy
- filename
- imageUris
- isPrivate
- key
- metadata
- mimeType
- name
- ownerId
- resId
- size
- status
- thumbnail
- transferId
- transferredAt
- type
- updatedAt
thread:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
verification:
type: object
properties:
created:
type: string
documentOrientation:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
documentQualityScore:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
lineItems:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
processingTime:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
result:
anyOf:
- type: string
- type: 'null'
status:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
version:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- created
- documentOrientation
- documentQualityScore
- lineItems
- processingTime
- resId
- result
- status
- teamId
- userId
- version
required:
- affiliation
- authorization
- date
- name
- resId
- signature
- signatureHash
- type: 'null'
threads:
anyOf:
- type: array
items:
type: object
properties:
name:
anyOf:
- type: string
- type: 'null'
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- name
- threadId
- type: 'null'
verification:
anyOf:
- type: object
properties:
created:
type: string
documentOrientation:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
documentQualityScore:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
lineItems:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
processingTime:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
result:
anyOf:
- type: string
- type: 'null'
status:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
version:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- created
- documentOrientation
- documentQualityScore
- lineItems
- processingTime
- resId
- result
- status
- teamId
- userId
- version
- type: 'null'
required:
- archivedAt
- bucket
- checksum
- createdAt
- createdBy
- filename
- imageUris
- isPrivate
- key
- metadata
- mimeType
- name
- ownerId
- resId
- size
- status
- thumbnail
- transferId
- transferredAt
- type
- updatedAt
ThreadFieldDefinitionResource:
type: object
properties:
default:
type: 'null'
name:
type: string
type:
enum:
- audio
- doc
- file
- image
- pdf
- video
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: 709f77e0-7134-4158-87b4-71f276af235a
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
description:
type: string
required:
- default
- name
- type
ThreadFieldDefinitionBoolean:
type: object
properties:
name:
type: string
type:
const: boolean
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: b12119c2-cc44-4694-bce7-b533d24fa2a3
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
default:
anyOf:
- type: boolean
- type: 'null'
description:
type: string
required:
- name
- type
ThreadFieldDefinitionDate:
type: object
properties:
name:
type: string
type:
const: date
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: 386ff857-2e20-41e6-b97f-6a626481fa89
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
default:
anyOf:
- type: string
- type: 'null'
description:
type: string
required:
- name
- type
ThreadFieldDefinitionDateRange:
type: object
properties:
name:
type: string
type:
const: date-range
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: 778b2689-0293-403b-8036-366f1f6ef9b3
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
default:
anyOf:
- type: object
properties:
from:
type: string
to:
type: string
required:
- from
- to
- type: 'null'
description:
type: string
required:
- name
- type
ThreadFieldDefinitionDatetime:
type: object
properties:
name:
type: string
type:
const: date-time
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: e8358975-3c3d-4b07-84ab-5a9e4810f34c
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
default:
anyOf:
- type: string
- type: 'null'
description:
type: string
required:
- name
- type
ThreadFieldDefinitionDuration:
type: object
properties:
name:
type: string
type:
const: duration
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: 43b8da40-adf9-499f-989d-79c6bfed671e
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
default:
anyOf:
- type: string
pattern: ^P(\d+Y)?(\d+M)?(\d+D)?T(\d+H)?(\d+M)?(\d+S)?$
- type: 'null'
description:
type: string
required:
- name
- type
ThreadFieldDefinitionEmail:
type: object
properties:
name:
type: string
type:
const: email
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: d3974814-0222-45da-bc9e-dc241e802784
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
default:
anyOf:
- type: string
pattern: ^[\w%+.-]+@[\d.A-Za-z-]+\.[A-Za-z]{2,}$
format: email
- type: 'null'
description:
type: string
required:
- name
- type
ThreadFieldDefinitionLongText:
type: object
properties:
name:
type: string
type:
const: long-text
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: 7ce96e4f-38d0-4c7d-8bd3-3f735aa0a2d9
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
default:
anyOf:
- type: string
- type: 'null'
description:
type: string
required:
- name
- type
ThreadFieldDefinitionNumber:
type: object
properties:
name:
type: string
type:
const: number
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: 88007de5-4857-4391-890f-0e22663116b9
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
default:
anyOf:
- type: number
- type: 'null'
description:
type: string
required:
- name
- type
ThreadFieldDefinitionJson:
type: object
properties:
name:
type: string
type:
const: object
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: f46e1465-eb29-4520-98af-b220e982e6e2
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
default:
anyOf:
- type: string
description: a JSON string
- type: 'null'
description:
type: string
required:
- name
- type
ThreadFieldDefinitionPhone:
type: object
properties:
name:
type: string
type:
const: phone
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: 4f65f255-250b-4ffb-b8f5-64144d2c3ecf
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
default:
anyOf:
- type: string
pattern: ^(?:\+?\d{1,4})?[-.\s]*?\(?\d{1,3}?\)?[-.\s]*?\d{1,4}[-.\s]*?\d{1,4}[-.\s]?\d{1,9}$
- type: 'null'
description:
type: string
required:
- name
- type
ThreadFieldDefinitionSelect:
type: object
properties:
name:
type: string
type:
const: select
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: 5744fc81-01ea-47ed-b407-a7416b54703e
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
default:
anyOf:
- type: object
properties:
options:
type: array
items:
type: string
selected:
type: string
required:
- options
- selected
- type: 'null'
description:
type: string
required:
- name
- type
ThreadFieldDefinitionSelectMany:
type: object
properties:
name:
type: string
type:
const: select-many
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: 48c7ffbe-23b4-4f01-a457-140a4531b7e3
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
default:
anyOf:
- type: object
properties:
options:
type: array
items:
type: string
selections:
anyOf:
- type: array
items:
type: string
- type: 'null'
required:
- options
- selections
- type: 'null'
description:
type: string
required:
- name
- type
ThreadFieldDefinitionTags:
type: object
properties:
name:
type: string
type:
const: tags
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: fa827b77-6f8f-4dcf-b7f9-77e702d9e133
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
default:
anyOf:
- type: array
items:
type: string
- type: 'null'
description:
type: string
required:
- name
- type
ThreadFieldDefinitionText:
type: object
properties:
name:
type: string
type:
const: text
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: f61578f3-7867-4b10-b964-71be2cca90ec
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
default:
anyOf:
- type: string
- type: 'null'
description:
type: string
required:
- name
- type
ThreadFieldDefinitionTime:
type: object
properties:
name:
type: string
type:
const: time
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: 88398b08-4bbe-4d51-98da-82bc2a63e7a1
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
default:
anyOf:
- type: string
- type: 'null'
description:
type: string
required:
- name
- type
ThreadFieldDefinitionUrl:
type: object
properties:
name:
type: string
type:
const: url
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: 03cae506-0c80-40be-8225-6e4dd35139a7
isPrivate:
type: boolean
default: false
isRequired:
type: boolean
default: false
default:
anyOf:
- type: string
format: uri
- type: 'null'
description:
type: string
required:
- name
- type
ThreadTemplateSpec:
type: array
items:
anyOf:
- $ref: '#/components/schemas/ThreadFieldDefinitionResource'
- $ref: '#/components/schemas/ThreadFieldDefinitionBoolean'
- $ref: '#/components/schemas/ThreadFieldDefinitionDate'
- $ref: '#/components/schemas/ThreadFieldDefinitionDateRange'
- $ref: '#/components/schemas/ThreadFieldDefinitionDatetime'
- $ref: '#/components/schemas/ThreadFieldDefinitionDuration'
- $ref: '#/components/schemas/ThreadFieldDefinitionEmail'
- $ref: '#/components/schemas/ThreadFieldDefinitionLongText'
- $ref: '#/components/schemas/ThreadFieldDefinitionNumber'
- $ref: '#/components/schemas/ThreadFieldDefinitionJson'
- $ref: '#/components/schemas/ThreadFieldDefinitionPhone'
- $ref: '#/components/schemas/ThreadFieldDefinitionSelect'
- $ref: '#/components/schemas/ThreadFieldDefinitionSelectMany'
- $ref: '#/components/schemas/ThreadFieldDefinitionTags'
- $ref: '#/components/schemas/ThreadFieldDefinitionText'
- $ref: '#/components/schemas/ThreadFieldDefinitionTime'
- $ref: '#/components/schemas/ThreadFieldDefinitionUrl'
ThreadTemplate:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
image: {}
name:
type: string
ownerId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
slug:
type: string
spec:
$ref: '#/components/schemas/ThreadTemplateSpec'
templateId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
owner:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
totalCount:
type: number
required:
- createdAt
- description
- image
- name
- ownerId
- slug
- spec
- templateId
- updatedAt
ThreadResponse:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
activeShipment:
anyOf:
- $ref: '#/components/schemas/ThreadActiveShipment'
- type: 'null'
assemblyMembership:
anyOf:
- type: object
properties:
assembly:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
relation:
anyOf:
- const: default
- const: private
- type: 'null'
required:
- assembly
- relation
- type: 'null'
assemblyPath:
type: array
items:
type: object
properties:
kind:
anyOf:
- type: string
- type: 'null'
name:
type: string
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
required:
- kind
- name
- threadId
bundles:
type: array
items:
type: object
properties:
bundleId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
childOfId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
kind:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
hasChildren:
type: boolean
idPath:
type: array
items:
type: string
isSharedOut:
type: boolean
path:
type: array
items:
type: string
permissions:
type: object
properties:
can_edit:
type: boolean
default: false
can_publish:
type: boolean
default: false
can_share:
type: boolean
default: false
can_transfer:
type: boolean
default: false
can_view:
type: boolean
default: false
threadCount:
type: number
required:
- bundleId
- childOfId
- createdAt
- description
- kind
- name
- ownerId
- updatedAt
categories:
type: array
items:
type: object
properties:
bundleId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
childOfId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
kind:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
hasChildren:
type: boolean
idPath:
type: array
items:
type: string
isSharedOut:
type: boolean
path:
type: array
items:
type: string
permissions:
type: object
properties:
can_edit:
type: boolean
default: false
can_publish:
type: boolean
default: false
can_share:
type: boolean
default: false
can_transfer:
type: boolean
default: false
can_view:
type: boolean
default: false
threadCount:
type: number
required:
- bundleId
- childOfId
- createdAt
- description
- kind
- name
- ownerId
- updatedAt
children:
type: array
items:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
creator:
$ref: '#/components/schemas/Principal'
data:
type: array
items:
anyOf:
- $ref: '#/components/schemas/ThreadFieldResource'
- $ref: '#/components/schemas/ThreadFieldBoolean'
- $ref: '#/components/schemas/ThreadFieldDate'
- $ref: '#/components/schemas/ThreadFieldDateRange'
- $ref: '#/components/schemas/ThreadFieldDatetime'
- $ref: '#/components/schemas/ThreadFieldDuration'
- $ref: '#/components/schemas/ThreadFieldEmail'
- $ref: '#/components/schemas/ThreadFieldLongText'
- $ref: '#/components/schemas/ThreadFieldNumber'
- $ref: '#/components/schemas/ThreadFieldJson'
- $ref: '#/components/schemas/ThreadFieldPhone'
- $ref: '#/components/schemas/ThreadFieldSelect'
- $ref: '#/components/schemas/ThreadFieldSelectMany'
- $ref: '#/components/schemas/ThreadFieldTags'
- $ref: '#/components/schemas/ThreadFieldText'
- $ref: '#/components/schemas/ThreadFieldThread'
- $ref: '#/components/schemas/ThreadFieldTime'
- $ref: '#/components/schemas/ThreadFieldUrl'
folder:
anyOf:
- type: object
properties:
bundleId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
childOfId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
kind:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
hasChildren:
type: boolean
idPath:
type: array
items:
type: string
isSharedOut:
type: boolean
path:
type: array
items:
type: string
permissions:
type: object
properties:
can_edit:
type: boolean
default: false
can_publish:
type: boolean
default: false
can_share:
type: boolean
default: false
can_transfer:
type: boolean
default: false
can_view:
type: boolean
default: false
threadCount:
type: number
required:
- bundleId
- childOfId
- createdAt
- description
- kind
- name
- ownerId
- updatedAt
- type: 'null'
owner:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
parent:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
parts:
type: array
items:
type: object
properties:
relation:
anyOf:
- const: default
- const: private
- type: 'null'
thread:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
required:
- relation
- thread
resources:
type: array
items:
$ref: '#/components/schemas/Resource'
tags:
type: array
items:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagType:
type: string
threadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
value:
type: string
indexing:
anyOf:
- const: default
- const: none
- type: 'null'
isBound:
anyOf:
- type: boolean
- type: 'null'
required:
- archivedAt
- createdAt
- description
- isPrivate
- metadata
- name
- ownerId
- tagId
- tagType
- threadId
- transferId
- transferredAt
- updatedAt
- value
teamOwner:
type: object
properties:
createdAt:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
website:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- logo
- name
- orgId
- slug
- updatedAt
- website
template:
$ref: '#/components/schemas/ThreadTemplate'
threadFields:
type: array
items:
anyOf:
- $ref: '#/components/schemas/ThreadFieldResource'
- $ref: '#/components/schemas/ThreadFieldBoolean'
- $ref: '#/components/schemas/ThreadFieldDate'
- $ref: '#/components/schemas/ThreadFieldDateRange'
- $ref: '#/components/schemas/ThreadFieldDatetime'
- $ref: '#/components/schemas/ThreadFieldDuration'
- $ref: '#/components/schemas/ThreadFieldEmail'
- $ref: '#/components/schemas/ThreadFieldLongText'
- $ref: '#/components/schemas/ThreadFieldNumber'
- $ref: '#/components/schemas/ThreadFieldJson'
- $ref: '#/components/schemas/ThreadFieldPhone'
- $ref: '#/components/schemas/ThreadFieldSelect'
- $ref: '#/components/schemas/ThreadFieldSelectMany'
- $ref: '#/components/schemas/ThreadFieldTags'
- $ref: '#/components/schemas/ThreadFieldText'
- $ref: '#/components/schemas/ThreadFieldThread'
- $ref: '#/components/schemas/ThreadFieldTime'
- $ref: '#/components/schemas/ThreadFieldUrl'
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
UploadResourceResponse:
type: object
properties:
bucket:
type: string
created:
type: string
createdBy:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
key:
type: string
resId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
updated:
type: string
uploadUrl:
type: string
checksum:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
filename:
anyOf:
- type: string
- type: 'null'
imageUris:
anyOf:
- type: array
items:
type: string
- type: 'null'
metadata:
anyOf:
- type: object
additionalProperties: {}
- type: 'null'
mimeType:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
size:
anyOf:
- type: number
- type: 'null'
status:
anyOf:
- const: pending
- const: uploaded
- type: 'null'
thumbnail:
anyOf:
- type: string
- type: 'null'
type:
anyOf:
- const: product_manual
- const: specification
- const: support_doc
- type: 'null'
required:
- bucket
- created
- createdBy
- key
- resId
- updated
- uploadUrl
ThreadCreateResponse:
type: object
properties:
created:
type: array
items:
$ref: '#/components/schemas/ThreadResponse'
uploadResponses:
type: array
items:
$ref: '#/components/schemas/UploadResourceResponse'
required:
- created
- uploadResponses
ThreadCreateManyRawRequest:
type: object
properties:
raw:
type: array
description: Raw array of thread creation objects. Fields will be derived from key-value pairs in objects.
items:
type: object
type:
const: raw
bundleId:
type: string
descriptionKey:
type: string
description: Key in raw objects to use as thread description. Defaults to 'description'
nameKey:
type: string
description: Key in raw objects to use as thread name. Defaults to 'name'
required:
- raw
- type
ThreadFieldResourceCreateInput:
type: object
properties:
type:
enum:
- audio
- doc
- file
- image
- pdf
- video
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldResourceValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldBooleanCreateInput:
type: object
properties:
type:
const: boolean
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldBooleanValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldDateCreateInput:
type: object
properties:
type:
const: date
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldDateValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldDateRangeCreateInput:
type: object
properties:
type:
const: date-range
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldDateRangeValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldDatetimeCreateInput:
type: object
properties:
type:
const: date-time
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldDatetimeValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldDurationCreateInput:
type: object
properties:
type:
const: duration
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldDurationValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldEmailCreateInput:
type: object
properties:
type:
const: email
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldEmailValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldLongTextCreateInput:
type: object
properties:
type:
const: long-text
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldTextValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldNumberCreateInput:
type: object
properties:
type:
const: number
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldNumberValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldJsonCreateInput:
type: object
properties:
type:
const: object
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldJsonValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldPhoneCreateInput:
type: object
properties:
type:
const: phone
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldPhoneValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldSelectCreateInput:
type: object
properties:
type:
const: select
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldSelectValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldSelectManyCreateInput:
type: object
properties:
type:
const: select-many
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldSelectManyValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldTagsCreateInput:
type: object
properties:
type:
const: tags
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldTagsValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldTextCreateInput:
type: object
properties:
type:
const: text
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldTextValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldThreadCreateInput:
type: object
properties:
type:
const: thread
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldThreadValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldTimeCreateInput:
type: object
properties:
type:
const: time
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldTimeValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadFieldUrlCreateInput:
type: object
properties:
type:
const: url
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldUrlValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- type
- value
ThreadCreateSingleRequest:
type: object
properties:
thread:
type: object
properties:
name:
type: string
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- name
type:
const: single
bundleId:
type: string
data:
type: array
description: Optional initial data fields to add to the thread upon creation
items:
anyOf:
- $ref: '#/components/schemas/ThreadFieldResourceCreateInput'
- $ref: '#/components/schemas/ThreadFieldBooleanCreateInput'
- $ref: '#/components/schemas/ThreadFieldDateCreateInput'
- $ref: '#/components/schemas/ThreadFieldDateRangeCreateInput'
- $ref: '#/components/schemas/ThreadFieldDatetimeCreateInput'
- $ref: '#/components/schemas/ThreadFieldDurationCreateInput'
- $ref: '#/components/schemas/ThreadFieldEmailCreateInput'
- $ref: '#/components/schemas/ThreadFieldLongTextCreateInput'
- $ref: '#/components/schemas/ThreadFieldNumberCreateInput'
- $ref: '#/components/schemas/ThreadFieldJsonCreateInput'
- $ref: '#/components/schemas/ThreadFieldPhoneCreateInput'
- $ref: '#/components/schemas/ThreadFieldSelectCreateInput'
- $ref: '#/components/schemas/ThreadFieldSelectManyCreateInput'
- $ref: '#/components/schemas/ThreadFieldTagsCreateInput'
- $ref: '#/components/schemas/ThreadFieldTextCreateInput'
- $ref: '#/components/schemas/ThreadFieldThreadCreateInput'
- $ref: '#/components/schemas/ThreadFieldTimeCreateInput'
- $ref: '#/components/schemas/ThreadFieldUrlCreateInput'
required:
- thread
- type
ThreadCreateBaseRequest:
type: object
properties:
thread:
type: object
properties:
name:
type: string
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- name
data:
type: array
description: Optional initial data fields to add to the thread upon creation
items:
anyOf:
- $ref: '#/components/schemas/ThreadFieldResourceCreateInput'
- $ref: '#/components/schemas/ThreadFieldBooleanCreateInput'
- $ref: '#/components/schemas/ThreadFieldDateCreateInput'
- $ref: '#/components/schemas/ThreadFieldDateRangeCreateInput'
- $ref: '#/components/schemas/ThreadFieldDatetimeCreateInput'
- $ref: '#/components/schemas/ThreadFieldDurationCreateInput'
- $ref: '#/components/schemas/ThreadFieldEmailCreateInput'
- $ref: '#/components/schemas/ThreadFieldLongTextCreateInput'
- $ref: '#/components/schemas/ThreadFieldNumberCreateInput'
- $ref: '#/components/schemas/ThreadFieldJsonCreateInput'
- $ref: '#/components/schemas/ThreadFieldPhoneCreateInput'
- $ref: '#/components/schemas/ThreadFieldSelectCreateInput'
- $ref: '#/components/schemas/ThreadFieldSelectManyCreateInput'
- $ref: '#/components/schemas/ThreadFieldTagsCreateInput'
- $ref: '#/components/schemas/ThreadFieldTextCreateInput'
- $ref: '#/components/schemas/ThreadFieldThreadCreateInput'
- $ref: '#/components/schemas/ThreadFieldTimeCreateInput'
- $ref: '#/components/schemas/ThreadFieldUrlCreateInput'
required:
- thread
ThreadCreateManyRequest:
type: object
properties:
threads:
type: array
description: List of threads to create in a single request. Each thread can have its own data fields and resource
requests.
items:
$ref: '#/components/schemas/ThreadCreateBaseRequest'
type:
const: list
bundleId:
type: string
required:
- threads
- type
ThreadListItem:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
activeShipment:
anyOf:
- $ref: '#/components/schemas/ThreadActiveShipment'
- type: 'null'
bundles:
type: array
items:
type: object
properties:
bundleId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
childOfId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
kind:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
hasChildren:
type: boolean
idPath:
type: array
items:
type: string
isSharedOut:
type: boolean
path:
type: array
items:
type: string
permissions:
type: object
properties:
can_edit:
type: boolean
default: false
can_publish:
type: boolean
default: false
can_share:
type: boolean
default: false
can_transfer:
type: boolean
default: false
can_view:
type: boolean
default: false
threadCount:
type: number
required:
- bundleId
- childOfId
- createdAt
- description
- kind
- name
- ownerId
- updatedAt
owner:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
tags:
type: array
items:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagType:
type: string
threadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
value:
type: string
indexing:
anyOf:
- const: default
- const: none
- type: 'null'
isBound:
anyOf:
- type: boolean
- type: 'null'
required:
- archivedAt
- createdAt
- description
- isPrivate
- metadata
- name
- ownerId
- tagId
- tagType
- threadId
- transferId
- transferredAt
- updatedAt
- value
teamOwner:
type: object
properties:
createdAt:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
website:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- logo
- name
- orgId
- slug
- updatedAt
- website
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
ThreadQueryResponse:
type: object
properties:
threads:
type: array
items:
$ref: '#/components/schemas/ThreadListItem'
next:
type: string
description: Next cursor if available
prev:
type: string
description: Previous cursor if available
required:
- threads
ThreadFieldList:
type: array
description: Updated fields of the thread
items:
anyOf:
- $ref: '#/components/schemas/ThreadFieldResource'
- $ref: '#/components/schemas/ThreadFieldBoolean'
- $ref: '#/components/schemas/ThreadFieldDate'
- $ref: '#/components/schemas/ThreadFieldDateRange'
- $ref: '#/components/schemas/ThreadFieldDatetime'
- $ref: '#/components/schemas/ThreadFieldDuration'
- $ref: '#/components/schemas/ThreadFieldEmail'
- $ref: '#/components/schemas/ThreadFieldLongText'
- $ref: '#/components/schemas/ThreadFieldNumber'
- $ref: '#/components/schemas/ThreadFieldJson'
- $ref: '#/components/schemas/ThreadFieldPhone'
- $ref: '#/components/schemas/ThreadFieldSelect'
- $ref: '#/components/schemas/ThreadFieldSelectMany'
- $ref: '#/components/schemas/ThreadFieldTags'
- $ref: '#/components/schemas/ThreadFieldText'
- $ref: '#/components/schemas/ThreadFieldThread'
- $ref: '#/components/schemas/ThreadFieldTime'
- $ref: '#/components/schemas/ThreadFieldUrl'
ThreadUpdateResponse:
type: object
properties:
thread:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
data:
$ref: '#/components/schemas/ThreadFieldList'
required:
- thread
ThreadFieldResourceUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
enum:
- audio
- doc
- file
- image
- pdf
- video
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldResourceValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldBooleanUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: boolean
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldBooleanValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldDateUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: date
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldDateValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldDateRangeUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: date-range
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldDateRangeValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldDatetimeUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: date-time
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldDatetimeValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldDurationUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: duration
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldDurationValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldEmailUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: email
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldEmailValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldLongTextUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: long-text
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldTextValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldNumberUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: number
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldNumberValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldJsonUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: object
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldJsonValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldPhoneUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: phone
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldPhoneValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldSelectUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: select
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldSelectValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldSelectManyUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: select-many
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldSelectManyValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldTagsUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: tags
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldTagsValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldTextUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: text
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldTextValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldThreadUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: thread
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldThreadValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldTimeUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: time
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldTimeValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadFieldUrlUpdateInput:
type: object
properties:
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: url
value:
anyOf:
- $ref: '#/components/schemas/ThreadFieldUrlValue'
- type: 'null'
archivedAt:
anyOf:
- type: string
- type: 'null'
defId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
isRequired:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
sortPriority:
type: number
required:
- fieldId
- type
- value
ThreadUpdateRequest:
type: object
properties:
thread:
type: object
description: Thread metadata to update
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
remove:
type: array
description: Field IDs to remove from the thread
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
update:
type: array
description: Fields to update or add to the thread
items:
anyOf:
- $ref: '#/components/schemas/ThreadFieldResourceUpdateInput'
- $ref: '#/components/schemas/ThreadFieldBooleanUpdateInput'
- $ref: '#/components/schemas/ThreadFieldDateUpdateInput'
- $ref: '#/components/schemas/ThreadFieldDateRangeUpdateInput'
- $ref: '#/components/schemas/ThreadFieldDatetimeUpdateInput'
- $ref: '#/components/schemas/ThreadFieldDurationUpdateInput'
- $ref: '#/components/schemas/ThreadFieldEmailUpdateInput'
- $ref: '#/components/schemas/ThreadFieldLongTextUpdateInput'
- $ref: '#/components/schemas/ThreadFieldNumberUpdateInput'
- $ref: '#/components/schemas/ThreadFieldJsonUpdateInput'
- $ref: '#/components/schemas/ThreadFieldPhoneUpdateInput'
- $ref: '#/components/schemas/ThreadFieldSelectUpdateInput'
- $ref: '#/components/schemas/ThreadFieldSelectManyUpdateInput'
- $ref: '#/components/schemas/ThreadFieldTagsUpdateInput'
- $ref: '#/components/schemas/ThreadFieldTextUpdateInput'
- $ref: '#/components/schemas/ThreadFieldThreadUpdateInput'
- $ref: '#/components/schemas/ThreadFieldTimeUpdateInput'
- $ref: '#/components/schemas/ThreadFieldUrlUpdateInput'
required:
- thread
ThreadUpdateDataResponse:
type: array
items:
anyOf:
- $ref: '#/components/schemas/ThreadFieldResource'
- $ref: '#/components/schemas/ThreadFieldBoolean'
- $ref: '#/components/schemas/ThreadFieldDate'
- $ref: '#/components/schemas/ThreadFieldDateRange'
- $ref: '#/components/schemas/ThreadFieldDatetime'
- $ref: '#/components/schemas/ThreadFieldDuration'
- $ref: '#/components/schemas/ThreadFieldEmail'
- $ref: '#/components/schemas/ThreadFieldLongText'
- $ref: '#/components/schemas/ThreadFieldNumber'
- $ref: '#/components/schemas/ThreadFieldJson'
- $ref: '#/components/schemas/ThreadFieldPhone'
- $ref: '#/components/schemas/ThreadFieldSelect'
- $ref: '#/components/schemas/ThreadFieldSelectMany'
- $ref: '#/components/schemas/ThreadFieldTags'
- $ref: '#/components/schemas/ThreadFieldText'
- $ref: '#/components/schemas/ThreadFieldThread'
- $ref: '#/components/schemas/ThreadFieldTime'
- $ref: '#/components/schemas/ThreadFieldUrl'
ThreadUpdateDataRequest:
type: object
properties:
threadId:
type: string
update:
type: array
items:
anyOf:
- $ref: '#/components/schemas/ThreadFieldResourceCreateInput'
- $ref: '#/components/schemas/ThreadFieldBooleanCreateInput'
- $ref: '#/components/schemas/ThreadFieldDateCreateInput'
- $ref: '#/components/schemas/ThreadFieldDateRangeCreateInput'
- $ref: '#/components/schemas/ThreadFieldDatetimeCreateInput'
- $ref: '#/components/schemas/ThreadFieldDurationCreateInput'
- $ref: '#/components/schemas/ThreadFieldEmailCreateInput'
- $ref: '#/components/schemas/ThreadFieldLongTextCreateInput'
- $ref: '#/components/schemas/ThreadFieldNumberCreateInput'
- $ref: '#/components/schemas/ThreadFieldJsonCreateInput'
- $ref: '#/components/schemas/ThreadFieldPhoneCreateInput'
- $ref: '#/components/schemas/ThreadFieldSelectCreateInput'
- $ref: '#/components/schemas/ThreadFieldSelectManyCreateInput'
- $ref: '#/components/schemas/ThreadFieldTagsCreateInput'
- $ref: '#/components/schemas/ThreadFieldTextCreateInput'
- $ref: '#/components/schemas/ThreadFieldThreadCreateInput'
- $ref: '#/components/schemas/ThreadFieldTimeCreateInput'
- $ref: '#/components/schemas/ThreadFieldUrlCreateInput'
expectedUpdatedAt:
type: string
remove:
type: array
items:
type: string
required:
- threadId
- update
ThreadArchivedDataResponse:
type: array
items:
anyOf:
- $ref: '#/components/schemas/ThreadFieldResource'
- $ref: '#/components/schemas/ThreadFieldBoolean'
- $ref: '#/components/schemas/ThreadFieldDate'
- $ref: '#/components/schemas/ThreadFieldDateRange'
- $ref: '#/components/schemas/ThreadFieldDatetime'
- $ref: '#/components/schemas/ThreadFieldDuration'
- $ref: '#/components/schemas/ThreadFieldEmail'
- $ref: '#/components/schemas/ThreadFieldLongText'
- $ref: '#/components/schemas/ThreadFieldNumber'
- $ref: '#/components/schemas/ThreadFieldJson'
- $ref: '#/components/schemas/ThreadFieldPhone'
- $ref: '#/components/schemas/ThreadFieldSelect'
- $ref: '#/components/schemas/ThreadFieldSelectMany'
- $ref: '#/components/schemas/ThreadFieldTags'
- $ref: '#/components/schemas/ThreadFieldText'
- $ref: '#/components/schemas/ThreadFieldThread'
- $ref: '#/components/schemas/ThreadFieldTime'
- $ref: '#/components/schemas/ThreadFieldUrl'
ThreadRestoreDataRequest:
type: object
properties:
restore:
type: array
items:
type: string
threadId:
type: string
required:
- restore
- threadId
ThreadPresenceViewer:
type: object
properties:
lastSeen:
type: number
name:
type: string
userId:
type: string
familyName:
anyOf:
- type: string
- type: 'null'
image:
anyOf:
- type: string
- type: 'null'
orgId:
anyOf:
- type: string
- type: 'null'
orgLogo:
anyOf:
- type: string
- type: 'null'
orgName:
anyOf:
- type: string
- type: 'null'
teamId:
anyOf:
- type: string
- type: 'null'
teamName:
anyOf:
- type: string
- type: 'null'
required:
- lastSeen
- name
- userId
ThreadPresenceResponse:
type: object
properties:
viewers:
type: array
items:
$ref: '#/components/schemas/ThreadPresenceViewer'
required:
- viewers
ThreadPresenceHeartbeatRequest:
type: object
properties:
familyName:
anyOf:
- type: string
- type: 'null'
image:
anyOf:
- type: string
- type: 'null'
leaving:
type: boolean
name:
type: string
ThreadGetResponse:
type: object
properties:
events:
type: array
items:
type: object
properties:
action:
type: string
maxLength: 64
comment:
anyOf:
- type: string
- type: 'null'
created:
type: string
declaredActor:
anyOf:
- type: object
properties:
id:
type: string
maxLength: 128
minLength: 1
displayName:
type: string
maxLength: 128
role:
type: string
maxLength: 64
system:
type: string
maxLength: 64
required:
- id
- type: 'null'
eventId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
geolocation:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
ipAddress:
anyOf:
- type: string
- type: 'null'
namespace:
anyOf:
- type: string
- type: 'null'
occurred:
type: string
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
operationName:
anyOf:
- type: string
- type: 'null'
payload:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
payload_version:
type: string
maxLength: 16
topic:
anyOf:
- type: string
- type: 'null'
transactionId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
userAgent:
anyOf:
- type: string
- type: 'null'
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userOrgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
required:
- action
- comment
- created
- declaredActor
- eventId
- geolocation
- ipAddress
- namespace
- occurred
- operationId
- operationName
- payload
- payload_version
- topic
- transactionId
- userAgent
- userId
- userOrgId
- userTeamId
thread:
$ref: '#/components/schemas/ThreadResponse'
required:
- events
- thread
ThreadAccessContextResponse:
type: array
description: List of teams the user belongs to that have access to the thread, along with their role and permissions
in the thread
items:
type: object
properties:
pmap:
type: object
properties:
can_edit:
type: boolean
default: false
can_publish:
type: boolean
default: false
can_share:
type: boolean
default: false
can_transfer:
type: boolean
default: false
can_view:
type: boolean
default: false
role:
enum:
- admin
- member
team:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
required:
- pmap
- role
- team
SetThumbnailUriRequest:
type: object
description: Request to set a thread's thumbnail to an existing image URI. Resource ID is optional but allows the client
to specify an existing resource that the URI corresponds to, which can be used for better tracking and management
of resources.
properties:
imageUri:
type: string
required:
- imageUri
SetThumbnailFromResourceRequest:
type: object
description: Set the thread's thumbnail using an existing resource.
properties:
resourceId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- resourceId
ThreadListSharedResponse:
type: array
items:
type: object
properties:
tuple:
anyOf:
- type: object
properties:
objectId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
objectType:
enum:
- actor
- bundle
- collection
- event
- field
- org
- profile
- resource
- session
- team
- template
- thread
- transaction
- user
- xtag
relation:
enum:
- admin
- attached
- container
- creator
- editor
- member
- owner
- parent
- private
- protected
- publish
- sender
- share
- transfer
- viewer
userCtxId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
userId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
userType:
const: user
condition:
anyOf:
- type: object
properties:
name:
type: string
context:
type: object
required:
- name
- type: 'null'
objectRelationSpecifier:
anyOf:
- const: admin
- const: attached
- const: container
- const: creator
- const: editor
- const: member
- const: owner
- const: parent
- const: private
- const: protected
- const: publish
- const: sender
- const: share
- const: transfer
- const: viewer
- type: 'null'
userRelationSpecifier:
anyOf:
- const: admin
- const: attached
- const: container
- const: creator
- const: editor
- const: member
- const: owner
- const: parent
- const: private
- const: protected
- const: publish
- const: sender
- const: share
- const: transfer
- const: viewer
- type: 'null'
required:
- objectId
- objectType
- relation
- userCtxId
- userId
- userType
- type: object
properties:
objectId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
objectType:
enum:
- actor
- bundle
- collection
- event
- field
- org
- profile
- resource
- session
- team
- template
- thread
- transaction
- user
- xtag
relation:
enum:
- admin
- attached
- container
- creator
- editor
- member
- owner
- parent
- private
- protected
- publish
- sender
- share
- transfer
- viewer
userId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
userType:
enum:
- actor
- bundle
- collection
- event
- field
- org
- profile
- resource
- session
- team
- template
- thread
- transaction
- xtag
condition:
anyOf:
- type: object
properties:
name:
type: string
context:
type: object
required:
- name
- type: 'null'
objectRelationSpecifier:
anyOf:
- const: admin
- const: attached
- const: container
- const: creator
- const: editor
- const: member
- const: owner
- const: parent
- const: private
- const: protected
- const: publish
- const: sender
- const: share
- const: transfer
- const: viewer
- type: 'null'
userCtxId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- {}
- type: 'null'
userRelationSpecifier:
anyOf:
- const: admin
- const: attached
- const: container
- const: creator
- const: editor
- const: member
- const: owner
- const: parent
- const: private
- const: protected
- const: publish
- const: sender
- const: share
- const: transfer
- const: viewer
- type: 'null'
required:
- objectId
- objectType
- relation
- userId
- userType
user: {}
required:
- tuple
ResourceSignedUrlList:
type: array
items:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
checksum:
anyOf:
- type: string
maxLength: 64
- type: 'null'
createdAt:
type: string
createdBy:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
filename:
anyOf:
- type: string
- type: 'null'
imageUris:
anyOf:
- type: array
items:
type: string
- type: 'null'
isPrivate:
type: boolean
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
mimeType:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
size:
anyOf:
- type: integer
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
thumbnail: {}
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
url:
type: string
signatures:
anyOf:
- type: array
items:
type: object
properties:
affiliation:
anyOf:
- type: string
- type: 'null'
authorization:
anyOf:
- type: string
- type: 'null'
date:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
signature:
anyOf:
- type: string
- type: 'null'
signatureHash:
anyOf:
- type: string
- type: 'null'
resource:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
bucket:
type: string
checksum:
anyOf:
- type: string
maxLength: 64
- type: 'null'
createdAt:
type: string
createdBy:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
filename:
anyOf:
- type: string
- type: 'null'
imageUris:
anyOf:
- type: array
items:
type: string
- type: 'null'
isPrivate:
type: boolean
key:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
mimeType:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
size:
anyOf:
- type: integer
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
thumbnail: {}
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- bucket
- checksum
- createdAt
- createdBy
- filename
- imageUris
- isPrivate
- key
- metadata
- mimeType
- name
- ownerId
- resId
- size
- status
- thumbnail
- transferId
- transferredAt
- type
- updatedAt
thread:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
verification:
type: object
properties:
created:
type: string
documentOrientation:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
documentQualityScore:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
lineItems:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
processingTime:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
result:
anyOf:
- type: string
- type: 'null'
status:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
version:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- created
- documentOrientation
- documentQualityScore
- lineItems
- processingTime
- resId
- result
- status
- teamId
- userId
- version
required:
- affiliation
- authorization
- date
- name
- resId
- signature
- signatureHash
- type: 'null'
threads:
anyOf:
- type: array
items:
type: object
properties:
name:
anyOf:
- type: string
- type: 'null'
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- name
- threadId
- type: 'null'
verification:
anyOf:
- type: object
properties:
created:
type: string
documentOrientation:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
documentQualityScore:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
lineItems:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
processingTime:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
result:
anyOf:
- type: string
- type: 'null'
status:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
version:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- created
- documentOrientation
- documentQualityScore
- lineItems
- processingTime
- resId
- result
- status
- teamId
- userId
- version
- type: 'null'
required:
- archivedAt
- checksum
- createdAt
- createdBy
- filename
- imageUris
- isPrivate
- metadata
- mimeType
- name
- ownerId
- resId
- size
- status
- thumbnail
- transferId
- transferredAt
- type
- updatedAt
- url
ThreadResourceUpdateRequest:
type: object
properties:
resource:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
isPrivate:
anyOf:
- enum:
- 'false'
- 'true'
- type: boolean
required:
- resource
ThreadResourceUpdateResponse:
type: object
properties:
resId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
resource:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
required:
- archivedAt
- isPrivate
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- resId
- resource
- threadId
ThreadTemplateInsert:
type: object
properties:
name:
type: string
spec:
$ref: '#/components/schemas/ThreadTemplateSpec'
description:
anyOf:
- type: string
- type: 'null'
image:
anyOf:
- type: string
- type: 'null'
required:
- name
- spec
ThreadTemplateUpdate:
type: object
properties:
description:
anyOf:
- type: string
- type: 'null'
image:
anyOf:
- type: string
- type: 'null'
name:
type: string
spec:
$ref: '#/components/schemas/ThreadTemplateSpec'
TeamCreate:
type: object
properties:
name:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
required:
- name
User:
type: object
properties:
banExpires:
anyOf:
- type: string
- type: 'null'
banReason:
anyOf:
- type: string
- type: 'null'
banned:
anyOf:
- type: boolean
- type: 'null'
createdAt:
type: string
kind:
type: string
role:
type: string
twoFactorEnabled:
anyOf:
- type: boolean
- type: 'null'
updatedAt:
type: string
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
auth:
type: object
properties:
banExpires:
anyOf:
- type: string
- type: 'null'
banReason:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
email:
type: string
pattern: ^[\w%+.-]+@[\d.A-Za-z-]+\.[A-Za-z]{2,}$
format: email
familyName:
anyOf:
- type: string
- type: 'null'
id:
type: string
image:
anyOf:
- type: string
- type: 'null'
name:
type: string
role:
type: string
updatedAt:
type: string
banned:
anyOf:
- type: boolean
- type: 'null'
default: false
emailVerified:
anyOf:
- type: boolean
- type: 'null'
default: false
twoFactorEnabled:
anyOf:
- type: boolean
- type: 'null'
default: false
activeOrgRole:
anyOf:
- type: string
- type: 'null'
required:
- banExpires
- banReason
- createdAt
- email
- familyName
- id
- image
- name
- role
- updatedAt
profile:
$ref: '#/components/schemas/Principal'
required:
- banExpires
- banReason
- banned
- createdAt
- kind
- role
- twoFactorEnabled
- updatedAt
- userId
ListTuplesResponse:
type: object
properties:
total:
type: number
tuples:
type: array
items:
anyOf:
- type: object
properties:
bundle:
type: object
properties:
bundleId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
childOfId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
kind:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
hasChildren:
type: boolean
idPath:
type: array
items:
type: string
isSharedOut:
type: boolean
path:
type: array
items:
type: string
permissions:
type: object
properties:
can_edit:
type: boolean
default: false
can_publish:
type: boolean
default: false
can_share:
type: boolean
default: false
can_transfer:
type: boolean
default: false
can_view:
type: boolean
default: false
threadCount:
type: number
required:
- bundleId
- childOfId
- createdAt
- description
- kind
- name
- ownerId
- updatedAt
owner:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
sharedBy:
anyOf:
- type: object
properties:
email:
type: string
name:
type: string
required:
- email
- name
- type: 'null'
sharedWith:
anyOf:
- type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
org:
type: object
properties:
createdAt:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
website:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- logo
- name
- orgId
- slug
- updatedAt
- website
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- org
- orgId
- teamId
- updatedAt
- type: 'null'
tuple:
anyOf:
- type: object
properties:
objectId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
objectType:
enum:
- actor
- bundle
- collection
- event
- field
- org
- profile
- resource
- session
- team
- template
- thread
- transaction
- user
- xtag
relation:
enum:
- admin
- attached
- container
- creator
- editor
- member
- owner
- parent
- private
- protected
- publish
- sender
- share
- transfer
- viewer
tupleId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
userCtxId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
userId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
userType:
const: user
condition:
anyOf:
- type: object
properties:
name:
type: string
context:
type: object
required:
- name
- type: 'null'
dormantCause:
anyOf:
- const: connection_paused
- const: direction_disallowed
- type: 'null'
objectRelationSpecifier:
anyOf:
- const: admin
- const: attached
- const: container
- const: creator
- const: editor
- const: member
- const: owner
- const: parent
- const: private
- const: protected
- const: publish
- const: sender
- const: share
- const: transfer
- const: viewer
- type: 'null'
suspendedAt:
anyOf:
- type: string
- type: 'null'
userRelationSpecifier:
anyOf:
- const: admin
- const: attached
- const: container
- const: creator
- const: editor
- const: member
- const: owner
- const: parent
- const: private
- const: protected
- const: publish
- const: sender
- const: share
- const: transfer
- const: viewer
- type: 'null'
required:
- objectId
- objectType
- relation
- tupleId
- userCtxId
- userId
- userType
- type: object
properties:
objectId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
objectType:
enum:
- actor
- bundle
- collection
- event
- field
- org
- profile
- resource
- session
- team
- template
- thread
- transaction
- user
- xtag
relation:
enum:
- admin
- attached
- container
- creator
- editor
- member
- owner
- parent
- private
- protected
- publish
- sender
- share
- transfer
- viewer
tupleId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
userId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
userType:
enum:
- actor
- bundle
- collection
- event
- field
- org
- profile
- resource
- session
- team
- template
- thread
- transaction
- xtag
condition:
anyOf:
- type: object
properties:
name:
type: string
context:
type: object
required:
- name
- type: 'null'
dormantCause:
anyOf:
- const: connection_paused
- const: direction_disallowed
- type: 'null'
objectRelationSpecifier:
anyOf:
- const: admin
- const: attached
- const: container
- const: creator
- const: editor
- const: member
- const: owner
- const: parent
- const: private
- const: protected
- const: publish
- const: sender
- const: share
- const: transfer
- const: viewer
- type: 'null'
suspendedAt:
anyOf:
- type: string
- type: 'null'
userCtxId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- {}
- type: 'null'
userRelationSpecifier:
anyOf:
- const: admin
- const: attached
- const: container
- const: creator
- const: editor
- const: member
- const: owner
- const: parent
- const: private
- const: protected
- const: publish
- const: sender
- const: share
- const: transfer
- const: viewer
- type: 'null'
required:
- objectId
- objectType
- relation
- tupleId
- userId
- userType
type:
const: bundle
required:
- bundle
- owner
- sharedBy
- sharedWith
- tuple
- type
- type: object
properties:
owner:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
sharedBy:
anyOf:
- type: object
properties:
email:
type: string
name:
type: string
required:
- email
- name
- type: 'null'
sharedWith:
anyOf:
- type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
org:
type: object
properties:
createdAt:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
website:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- logo
- name
- orgId
- slug
- updatedAt
- website
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- org
- orgId
- teamId
- updatedAt
- type: 'null'
thread:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
tuple:
anyOf:
- type: object
properties:
objectId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
objectType:
enum:
- actor
- bundle
- collection
- event
- field
- org
- profile
- resource
- session
- team
- template
- thread
- transaction
- user
- xtag
relation:
enum:
- admin
- attached
- container
- creator
- editor
- member
- owner
- parent
- private
- protected
- publish
- sender
- share
- transfer
- viewer
tupleId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
userCtxId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
userId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
userType:
const: user
condition:
anyOf:
- type: object
properties:
name:
type: string
context:
type: object
required:
- name
- type: 'null'
dormantCause:
anyOf:
- const: connection_paused
- const: direction_disallowed
- type: 'null'
objectRelationSpecifier:
anyOf:
- const: admin
- const: attached
- const: container
- const: creator
- const: editor
- const: member
- const: owner
- const: parent
- const: private
- const: protected
- const: publish
- const: sender
- const: share
- const: transfer
- const: viewer
- type: 'null'
suspendedAt:
anyOf:
- type: string
- type: 'null'
userRelationSpecifier:
anyOf:
- const: admin
- const: attached
- const: container
- const: creator
- const: editor
- const: member
- const: owner
- const: parent
- const: private
- const: protected
- const: publish
- const: sender
- const: share
- const: transfer
- const: viewer
- type: 'null'
required:
- objectId
- objectType
- relation
- tupleId
- userCtxId
- userId
- userType
- type: object
properties:
objectId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
objectType:
enum:
- actor
- bundle
- collection
- event
- field
- org
- profile
- resource
- session
- team
- template
- thread
- transaction
- user
- xtag
relation:
enum:
- admin
- attached
- container
- creator
- editor
- member
- owner
- parent
- private
- protected
- publish
- sender
- share
- transfer
- viewer
tupleId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
userId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
userType:
enum:
- actor
- bundle
- collection
- event
- field
- org
- profile
- resource
- session
- team
- template
- thread
- transaction
- xtag
condition:
anyOf:
- type: object
properties:
name:
type: string
context:
type: object
required:
- name
- type: 'null'
dormantCause:
anyOf:
- const: connection_paused
- const: direction_disallowed
- type: 'null'
objectRelationSpecifier:
anyOf:
- const: admin
- const: attached
- const: container
- const: creator
- const: editor
- const: member
- const: owner
- const: parent
- const: private
- const: protected
- const: publish
- const: sender
- const: share
- const: transfer
- const: viewer
- type: 'null'
suspendedAt:
anyOf:
- type: string
- type: 'null'
userCtxId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- {}
- type: 'null'
userRelationSpecifier:
anyOf:
- const: admin
- const: attached
- const: container
- const: creator
- const: editor
- const: member
- const: owner
- const: parent
- const: private
- const: protected
- const: publish
- const: sender
- const: share
- const: transfer
- const: viewer
- type: 'null'
required:
- objectId
- objectType
- relation
- tupleId
- userId
- userType
type:
const: thread
required:
- owner
- sharedBy
- sharedWith
- thread
- tuple
- type
required:
- total
- tuples
AccessSummaryResponse:
type: object
properties:
canManage:
type: boolean
entries:
type: array
items:
type: object
properties:
role:
enum:
- editor
- viewer
sources:
type: array
items:
anyOf:
- type: object
properties:
folderId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
folderName:
type: string
kind:
const: inherited
relation:
enum:
- editor
- viewer
via:
enum:
- assembly
- category
- folder
dormantCause:
enum:
- connection_paused
- direction_disallowed
suspended:
type: boolean
required:
- folderId
- folderName
- kind
- relation
- via
- type: object
properties:
kind:
const: direct
relation:
enum:
- editor
- viewer
tupleId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
dormantCause:
enum:
- connection_paused
- direction_disallowed
suspended:
type: boolean
required:
- kind
- relation
- tupleId
- type: object
properties:
kind:
const: owner
required:
- kind
team:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
createdAt:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
website:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- logo
- name
- orgId
- slug
- updatedAt
- website
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
dormantCause:
enum:
- connection_paused
- direction_disallowed
suspended:
type: boolean
required:
- role
- sources
- team
required:
- canManage
- entries
PartnerInventoryResponse:
type: object
properties:
counts:
type: object
properties:
grants:
type: number
inFlightTransfers:
type: number
suspended:
type: number
required:
- grants
- inFlightTransfers
- suspended
items:
type: array
items:
type: object
properties:
direction:
enum:
- in
- out
name:
anyOf:
- type: string
- type: 'null'
objectId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
objectType:
enum:
- bundle
- thread
relation:
enum:
- editor
- viewer
suspendedAt:
anyOf:
- type: string
- type: 'null'
tupleId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
dormantCause:
anyOf:
- const: connection_paused
- const: direction_disallowed
- type: 'null'
required:
- direction
- name
- objectId
- objectType
- relation
- suspendedAt
- tupleId
required:
- counts
- items
ShareRequest:
type: object
properties:
items:
type: array
items:
type: object
properties:
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
item:
enum:
- bundle
- thread
relation:
enum:
- editor
- viewer
teamId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- id
- item
- relation
- teamId
required:
- items
ShareUpdateRequest:
type: object
properties:
relation:
enum:
- admin
- attached
- container
- creator
- editor
- member
- owner
- parent
- private
- protected
- publish
- sender
- share
- transfer
- viewer
required:
- relation
ShareRemoveRequest:
type: object
properties:
ids:
type: array
description: Sharing instance ids
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- ids
FabricStateChangeReason:
type: object
properties:
createdAt:
type: string
fromState:
enum:
- abandoned
- canceled
- change_request
- completed
- draft
- failed_retryable
- processing
- rejected
- sent
id:
type: string
message:
type: string
toState:
enum:
- abandoned
- canceled
- change_request
- completed
- draft
- failed_retryable
- processing
- rejected
- sent
userEmail:
type: string
userId:
type: string
teamId:
anyOf:
- type: string
- type: 'null'
userAvatar:
anyOf:
- type: string
- type: 'null'
userName:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- fromState
- id
- message
- toState
- userEmail
- userId
EventListResponse:
type: object
properties:
events:
type: array
items:
type: object
properties:
action:
type: string
maxLength: 64
comment:
anyOf:
- type: string
- type: 'null'
created:
type: string
declaredActor:
anyOf:
- type: object
properties:
id:
type: string
maxLength: 128
minLength: 1
displayName:
type: string
maxLength: 128
role:
type: string
maxLength: 64
system:
type: string
maxLength: 64
required:
- id
- type: 'null'
eventId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
geolocation:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
ipAddress:
anyOf:
- type: string
- type: 'null'
namespace:
anyOf:
- type: string
- type: 'null'
occurred:
type: string
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
operationName:
anyOf:
- type: string
- type: 'null'
payload:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
payload_version:
type: string
maxLength: 16
topic:
anyOf:
- type: string
- type: 'null'
transactionId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
userAgent:
anyOf:
- type: string
- type: 'null'
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userOrgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
to_bundles:
type: array
items:
type: object
properties:
bundleId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
childOfId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
kind:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
hasChildren:
type: boolean
idPath:
type: array
items:
type: string
isSharedOut:
type: boolean
path:
type: array
items:
type: string
permissions:
type: object
properties:
can_edit:
type: boolean
default: false
can_publish:
type: boolean
default: false
can_share:
type: boolean
default: false
can_transfer:
type: boolean
default: false
can_view:
type: boolean
default: false
threadCount:
type: number
required:
- bundleId
- childOfId
- createdAt
- description
- kind
- name
- ownerId
- updatedAt
to_collections:
type: array
items:
type: object
properties:
collectionId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
required:
- collectionId
- createdAt
- description
- kind
- name
- ownerId
- updatedAt
to_fabric_operations:
type: array
items:
type: object
properties:
abandonedAt:
anyOf:
- type: string
- type: 'null'
completedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
kind:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
primaryThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
respondentId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
sourceTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
startedAt:
anyOf:
- type: string
- type: 'null'
status:
type: string
targetTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
stateReasons:
anyOf:
- type: array
items:
$ref: '#/components/schemas/FabricStateChangeReason'
- type: 'null'
required:
- abandonedAt
- completedAt
- createdAt
- createdById
- description
- id
- kind
- metadata
- name
- primaryThreadId
- respondentId
- sourceTeamId
- startedAt
- status
- targetTeamId
- updatedAt
to_fields:
type: array
items:
anyOf:
- $ref: '#/components/schemas/ThreadFieldResource'
- $ref: '#/components/schemas/ThreadFieldBoolean'
- $ref: '#/components/schemas/ThreadFieldDate'
- $ref: '#/components/schemas/ThreadFieldDateRange'
- $ref: '#/components/schemas/ThreadFieldDatetime'
- $ref: '#/components/schemas/ThreadFieldDuration'
- $ref: '#/components/schemas/ThreadFieldEmail'
- $ref: '#/components/schemas/ThreadFieldLongText'
- $ref: '#/components/schemas/ThreadFieldNumber'
- $ref: '#/components/schemas/ThreadFieldJson'
- $ref: '#/components/schemas/ThreadFieldPhone'
- $ref: '#/components/schemas/ThreadFieldSelect'
- $ref: '#/components/schemas/ThreadFieldSelectMany'
- $ref: '#/components/schemas/ThreadFieldTags'
- $ref: '#/components/schemas/ThreadFieldText'
- $ref: '#/components/schemas/ThreadFieldThread'
- $ref: '#/components/schemas/ThreadFieldTime'
- $ref: '#/components/schemas/ThreadFieldUrl'
to_orgs:
type: array
items:
type: object
properties:
createdAt:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
website:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- logo
- name
- orgId
- slug
- updatedAt
- website
to_relationships:
type: array
items:
type: object
properties:
archived:
type: boolean
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
forwardLabel:
type: string
inverseLabel:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
relId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
type: string
updatedAt:
type: string
required:
- archived
- createdAt
- description
- forwardLabel
- inverseLabel
- metadata
- name
- ownerId
- relId
- slug
- updatedAt
to_resources:
type: array
items:
$ref: '#/components/schemas/Resource'
to_tags:
type: array
items:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagType:
type: string
threadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
value:
type: string
indexing:
anyOf:
- const: default
- const: none
- type: 'null'
isBound:
anyOf:
- type: boolean
- type: 'null'
required:
- archivedAt
- createdAt
- description
- isPrivate
- metadata
- name
- ownerId
- tagId
- tagType
- threadId
- transferId
- transferredAt
- updatedAt
- value
to_teams:
type: array
items:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
to_thread_templates:
type: array
items:
$ref: '#/components/schemas/ThreadTemplate'
to_threads:
type: array
items:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
userKind:
enum:
- human
- service
userOrg:
type: object
properties:
createdAt:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
website:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- logo
- name
- orgId
- slug
- updatedAt
- website
userProfile:
$ref: '#/components/schemas/Principal'
userTeam:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
required:
- action
- comment
- created
- declaredActor
- eventId
- geolocation
- ipAddress
- namespace
- occurred
- operationId
- operationName
- payload
- payload_version
- topic
- transactionId
- userAgent
- userId
- userOrgId
- userTeamId
next:
type: string
prev:
type: string
required:
- events
UpdateProfileRequest:
type: object
properties:
familyName:
type: string
image:
anyOf:
- description: A file object representing the user's profile image. Can be null to remove the existing image.
- type: 'null'
description: A file object representing the user's profile image. Can be null to remove the existing image.
description: A file object representing the user's profile image. Can be null to remove the existing image.
name:
type: string
DocLineItem:
type: object
properties:
boxNumber:
anyOf:
- type: number
- type: string
description:
type: string
status:
enum:
- approved
- pending
- rejected
- viewed
title:
type: string
itemId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
default: 28b8e076-b4be-4f00-837b-476eb131872c
position:
type: object
properties:
height:
type: number
width:
type: number
x:
type: number
y:
type: number
required:
- height
- width
- x
- y
required:
- boxNumber
- description
- status
- title
ResourceVerification:
type: object
properties:
created:
type: string
documentOrientation:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
documentQualityScore:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
lineItems:
anyOf:
- type: array
items:
$ref: '#/components/schemas/DocLineItem'
- type: 'null'
processingTime:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
result:
anyOf:
- type: string
- type: 'null'
status:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
version:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- created
- documentOrientation
- documentQualityScore
- lineItems
- processingTime
- resId
- result
- status
- teamId
- userId
- version
UploadResourceRequest:
type: object
properties:
filename:
type: string
minLength: 1
resId:
anyOf:
- type: string
description: temporary upload id returned by the TUS upload endpoint
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: temporary upload id returned by the TUS upload endpoint
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: temporary upload id returned by the TUS upload endpoint
format: uuid
description: temporary upload id returned by the TUS upload endpoint
format: uuid
size:
type: number
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
anyOf:
- enum:
- 'false'
- 'true'
- type: boolean
required:
- filename
- resId
- size
ResourceUploadForm:
type: object
properties:
file: {}
expectedUpdatedAt:
type: string
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
isPrivate:
anyOf:
- enum:
- 'false'
- 'true'
- type: boolean
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- file
ResourceUploadResponse:
type: array
items:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
checksum:
anyOf:
- type: string
maxLength: 64
- type: 'null'
createdAt:
type: string
createdBy:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
filename:
anyOf:
- type: string
- type: 'null'
imageUris:
anyOf:
- type: array
items:
type: string
- type: 'null'
isPrivate:
type: boolean
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
mimeType:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
size:
anyOf:
- type: integer
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
thumbnail: {}
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
url:
type: string
signatures:
anyOf:
- type: array
items:
type: object
properties:
affiliation:
anyOf:
- type: string
- type: 'null'
authorization:
anyOf:
- type: string
- type: 'null'
date:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
signature:
anyOf:
- type: string
- type: 'null'
signatureHash:
anyOf:
- type: string
- type: 'null'
resource:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
bucket:
type: string
checksum:
anyOf:
- type: string
maxLength: 64
- type: 'null'
createdAt:
type: string
createdBy:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
filename:
anyOf:
- type: string
- type: 'null'
imageUris:
anyOf:
- type: array
items:
type: string
- type: 'null'
isPrivate:
type: boolean
key:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
mimeType:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
size:
anyOf:
- type: integer
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
thumbnail: {}
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- bucket
- checksum
- createdAt
- createdBy
- filename
- imageUris
- isPrivate
- key
- metadata
- mimeType
- name
- ownerId
- resId
- size
- status
- thumbnail
- transferId
- transferredAt
- type
- updatedAt
thread:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
verification:
type: object
properties:
created:
type: string
documentOrientation:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
documentQualityScore:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
lineItems:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
processingTime:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
result:
anyOf:
- type: string
- type: 'null'
status:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
version:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- created
- documentOrientation
- documentQualityScore
- lineItems
- processingTime
- resId
- result
- status
- teamId
- userId
- version
required:
- affiliation
- authorization
- date
- name
- resId
- signature
- signatureHash
- type: 'null'
threads:
anyOf:
- type: array
items:
type: object
properties:
name:
anyOf:
- type: string
- type: 'null'
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- name
- threadId
- type: 'null'
verification:
anyOf:
- type: object
properties:
created:
type: string
documentOrientation:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
documentQualityScore:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
lineItems:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
processingTime:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
result:
anyOf:
- type: string
- type: 'null'
status:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
version:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- created
- documentOrientation
- documentQualityScore
- lineItems
- processingTime
- resId
- result
- status
- teamId
- userId
- version
- type: 'null'
required:
- archivedAt
- checksum
- createdAt
- createdBy
- filename
- imageUris
- isPrivate
- metadata
- mimeType
- name
- ownerId
- resId
- size
- status
- thumbnail
- transferId
- transferredAt
- type
- updatedAt
- url
LinkAvailableThreadItem:
type: object
properties:
name:
type: string
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
thumbnail:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
archivedAt:
anyOf:
- type: string
- type: 'null'
bundles:
type: array
items:
type: object
properties:
bundleId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
childOfId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
kind:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
hasChildren:
type: boolean
idPath:
type: array
items:
type: string
isSharedOut:
type: boolean
path:
type: array
items:
type: string
permissions:
type: object
properties:
can_edit:
type: boolean
default: false
can_publish:
type: boolean
default: false
can_share:
type: boolean
default: false
can_transfer:
type: boolean
default: false
can_view:
type: boolean
default: false
threadCount:
type: number
required:
- bundleId
- childOfId
- createdAt
- description
- kind
- name
- ownerId
- updatedAt
description:
anyOf:
- type: string
- type: 'null'
required:
- name
- threadId
- thumbnail
- updatedAt
LinkAvailableThreadsResponse:
type: object
properties:
threads:
type: array
items:
$ref: '#/components/schemas/LinkAvailableThreadItem'
total:
type: number
required:
- threads
- total
ImportSlotEntry:
type: object
properties:
name:
type: string
minLength: 1
partRef:
type: string
required:
- name
ImportThreadEntry:
type: object
properties:
kind:
enum:
- assembly
- unit
name:
type: string
minLength: 1
ref:
type: string
minLength: 1
categoryRefs:
type: array
items:
type: string
description:
anyOf:
- type: string
- type: 'null'
fields:
type: array
items:
anyOf:
- $ref: '#/components/schemas/ThreadFieldResourceCreateInput'
- $ref: '#/components/schemas/ThreadFieldBooleanCreateInput'
- $ref: '#/components/schemas/ThreadFieldDateCreateInput'
- $ref: '#/components/schemas/ThreadFieldDateRangeCreateInput'
- $ref: '#/components/schemas/ThreadFieldDatetimeCreateInput'
- $ref: '#/components/schemas/ThreadFieldDurationCreateInput'
- $ref: '#/components/schemas/ThreadFieldEmailCreateInput'
- $ref: '#/components/schemas/ThreadFieldLongTextCreateInput'
- $ref: '#/components/schemas/ThreadFieldNumberCreateInput'
- $ref: '#/components/schemas/ThreadFieldJsonCreateInput'
- $ref: '#/components/schemas/ThreadFieldPhoneCreateInput'
- $ref: '#/components/schemas/ThreadFieldSelectCreateInput'
- $ref: '#/components/schemas/ThreadFieldSelectManyCreateInput'
- $ref: '#/components/schemas/ThreadFieldTagsCreateInput'
- $ref: '#/components/schemas/ThreadFieldTextCreateInput'
- $ref: '#/components/schemas/ThreadFieldThreadCreateInput'
- $ref: '#/components/schemas/ThreadFieldTimeCreateInput'
- $ref: '#/components/schemas/ThreadFieldUrlCreateInput'
parentRef:
type: string
relation:
enum:
- default
- private
slots:
type: array
items:
$ref: '#/components/schemas/ImportSlotEntry'
required:
- kind
- name
- ref
ImportCategoryEntry:
type: object
properties:
name:
type: string
minLength: 1
ref:
type: string
minLength: 1
description:
anyOf:
- type: string
- type: 'null'
required:
- name
- ref
ImportFolderEntry:
type: object
properties:
name:
type: string
minLength: 1
required:
- name
ImportRelationshipEntry:
type: object
properties:
forwardLabel:
type: string
minLength: 1
inverseLabel:
type: string
minLength: 1
ref:
type: string
minLength: 1
description:
anyOf:
- type: string
- type: 'null'
name:
type: string
required:
- forwardLabel
- inverseLabel
- ref
ImportThreadLinkEntry:
type: object
properties:
fromRef:
type: string
minLength: 1
relationshipRef:
type: string
minLength: 1
toRef:
type: string
minLength: 1
required:
- fromRef
- relationshipRef
- toRef
AssemblyImportPackage:
type: object
properties:
threads:
type: array
items:
$ref: '#/components/schemas/ImportThreadEntry'
version:
type: number
categories:
type: array
items:
$ref: '#/components/schemas/ImportCategoryEntry'
folder:
$ref: '#/components/schemas/ImportFolderEntry'
label:
type: string
relationships:
type: array
items:
$ref: '#/components/schemas/ImportRelationshipEntry'
threadLinks:
type: array
items:
$ref: '#/components/schemas/ImportThreadLinkEntry'
required:
- threads
- version
ImportRequest:
type: object
properties:
package:
$ref: '#/components/schemas/AssemblyImportPackage'
required:
- package
ImportPlanMatch:
type: object
properties:
action:
enum:
- create
- match
candidates:
type: number
name:
type: string
ref:
type: string
matchedId:
anyOf:
- type: string
- type: 'null'
required:
- action
- candidates
- name
- ref
ImportPlanIssue:
type: object
properties:
code:
type: string
message:
type: string
severity:
enum:
- blocking
- warning
ref:
type: string
required:
- code
- message
- severity
ImportPlanSummary:
type: object
properties:
assembliesToCreate:
type: number
categoriesMatched:
type: number
categoriesToCreate:
type: number
fieldsToCreate:
type: number
partAttachments:
type: number
relationshipsMatched:
type: number
relationshipsToCreate:
type: number
slotsToCreate:
type: number
threadLinks:
type: number
threadsToCreate:
type: number
unitsToCreate:
type: number
required:
- assembliesToCreate
- categoriesMatched
- categoriesToCreate
- fieldsToCreate
- partAttachments
- relationshipsMatched
- relationshipsToCreate
- slotsToCreate
- threadLinks
- threadsToCreate
- unitsToCreate
ImportPlan:
type: object
properties:
categories:
type: array
items:
$ref: '#/components/schemas/ImportPlanMatch'
issues:
type: array
items:
$ref: '#/components/schemas/ImportPlanIssue'
ok:
type: boolean
relationships:
type: array
items:
$ref: '#/components/schemas/ImportPlanMatch'
summary:
$ref: '#/components/schemas/ImportPlanSummary'
folder:
anyOf:
- $ref: '#/components/schemas/ImportPlanMatch'
- type: 'null'
label:
anyOf:
- type: string
- type: 'null'
required:
- categories
- issues
- ok
- relationships
- summary
ImportPlanResponse:
type: object
properties:
plan:
$ref: '#/components/schemas/ImportPlan'
required:
- plan
ImportCommitResponse:
type: object
properties:
createdThreadCount:
type: number
ok:
type: boolean
rootAssemblyIds:
type: array
items:
type: string
folderId:
anyOf:
- type: string
- type: 'null'
required:
- createdThreadCount
- ok
- rootAssemblyIds
TagExtractRequestMetadata:
type: object
description: In multipart submissions, provide a JSON string of [TagExtractRequestMetadata](#model/TagExtractRequestMetadata);
otherwise, a direct object is also accepted.
properties:
enrollmentSessionId:
anyOf:
- type: string
description: ID to create and associate this extraction with an enrollment session
- type: 'null'
orgId:
anyOf:
- type: string
description: ID of the organization to associate this extraction with. If not provided, will be associated with
the user's current context organization
- type: 'null'
settings:
type: object
properties:
accuracy:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
androidCameraId:
anyOf:
- type: string
- type: 'null'
appId:
anyOf:
- type: string
- type: 'null'
appName:
anyOf:
- type: string
- type: 'null'
appVersion:
anyOf:
- type: string
- type: 'null'
autoFocusRangeRestriction:
anyOf:
- const: far
- const: near
- const: none
- type: 'null'
brand:
anyOf:
- type: string
- type: 'null'
build:
anyOf:
- type: string
- type: 'null'
calibrationConfidence:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
calibrationId:
anyOf:
- type: string
- type: 'null'
calibrationVersion:
anyOf:
- type: string
- type: 'null'
calibrationZoom:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
cameraId:
anyOf:
- type: string
- type: 'null'
captureSource:
anyOf:
- type: string
- type: 'null'
deviceId:
anyOf:
- type: string
- type: 'null'
deviceName:
anyOf:
- type: string
- type: 'null'
deviceType:
anyOf:
- const: DESKTOP
- const: PHONE
- const: TABLET
- const: TV
- const: UNKNOWN
- type: 'null'
dragonBackend:
anyOf:
- type: string
- type: 'null'
dragonErrorCode:
anyOf:
- type: string
- type: 'null'
exposureDuration:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
exposureValue:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
flashMode:
anyOf:
- const: auto
- const: 'off'
- const: 'on'
- const: torch
- type: 'null'
focusDepth:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
focusMode:
anyOf:
- type: string
- type: 'null'
focusSetPoint:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
focusX:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
focusY:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
iso:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
latitude:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
lensPosition:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
longitude:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
modelId:
anyOf:
- type: string
- type: 'null'
modelName:
anyOf:
- type: string
- type: 'null'
osBuildId:
anyOf:
- type: string
- type: 'null'
osName:
anyOf:
- type: string
- type: 'null'
osVersion:
anyOf:
- type: string
- type: 'null'
selectedLens:
anyOf:
- type: string
- type: 'null'
tapToFocusCount:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
usbDeviceName:
anyOf:
- type: string
- type: 'null'
usbProductId:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
usbVendorId:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
zoom:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
TagOptions:
type: object
description: In multipart submissions, provide a JSON string of [TagOptions](#model/TagOptions); otherwise, a direct
object is also accepted.
properties:
metadata:
type: object
properties:
format:
enum:
- auspost
- azteccode
- azteccodecompact
- aztecrune
- bc412
- channelcode
- codablockf
- code11
- code128
- code16k
- code2of5
- code32
- code39
- code39ext
- code49
- code93
- code93ext
- codeone
- coop2of5
- daft
- databarexpanded
- databarexpandedcomposite
- databarexpandedstacked
- databarexpandedstackedcomposite
- databarlimited
- databarlimitedcomposite
- databaromni
- databaromnicomposite
- databarstacked
- databarstackedcomposite
- databarstackedomni
- databarstackedomnicomposite
- databartruncated
- databartruncatedcomposite
- datalogic2of5
- datamatrix
- datamatrixrectangular
- datamatrixrectangularextension
- dotcode
- ean13
- ean13composite
- ean14
- ean2
- ean5
- ean8
- ean8composite
- flattermarken
- gs1-128
- gs1-128composite
- gs1-cc
- gs1datamatrix
- gs1datamatrixrectangular
- gs1dldatamatrix
- gs1dlqrcode
- gs1dotcode
- gs1northamericancoupon
- gs1qrcode
- hanxin
- hibcazteccode
- hibccodablockf
- hibccode128
- hibccode39
- hibcdatamatrix
- hibcdatamatrixrectangular
- hibcmicropdf417
- hibcpdf417
- hibcqrcode
- iata2of5
- identcode
- industrial2of5
- interleaved2of5
- isbn
- ismn
- issn
- itf14
- japanpost
- kix
- leitcode
- mailmark
- mands
- matrix2of5
- maxicode
- micropdf417
- microqrcode
- msi
- onecode
- pdf417
- pdf417compact
- pharmacode
- pharmacode2
- planet
- plessey
- posicode
- postnet
- pzn
- qrcode
- rationalizedCodabar
- raw
- rectangularmicroqrcode
- royalmail
- sscc18
- swissqrcode
- symbol
- telepen
- telepennumeric
- ultracode
- upca
- upcacomposite
- upce
- upcecomposite
BindTextTag:
type: object
properties:
data:
type: string
tagType:
enum:
- BAR_CODE
- DATA_MATRIX
- NFC
- QR
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
options:
anyOf:
- type: string
description: In multipart submissions, provide a JSON string of [TagOptions](#model/TagOptions); otherwise, a
direct object is also accepted.
- $ref: '#/components/schemas/TagOptions'
tagDescription:
type: string
required:
- data
- tagType
- threadId
additionalProperties: false
BindDustImageOptions:
type: object
description: In multipart submissions, provide a JSON string of [BindDustImageOptions](#model/BindDustImageOptions);
otherwise, a direct object is also accepted.
properties:
enrollmentSessionId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
indexing:
enum:
- default
- none
metadata:
type: object
properties:
format:
enum:
- auspost
- azteccode
- azteccodecompact
- aztecrune
- bc412
- channelcode
- codablockf
- code11
- code128
- code16k
- code2of5
- code32
- code39
- code39ext
- code49
- code93
- code93ext
- codeone
- coop2of5
- daft
- databarexpanded
- databarexpandedcomposite
- databarexpandedstacked
- databarexpandedstackedcomposite
- databarlimited
- databarlimitedcomposite
- databaromni
- databaromnicomposite
- databarstacked
- databarstackedcomposite
- databarstackedomni
- databarstackedomnicomposite
- databartruncated
- databartruncatedcomposite
- datalogic2of5
- datamatrix
- datamatrixrectangular
- datamatrixrectangularextension
- dotcode
- ean13
- ean13composite
- ean14
- ean2
- ean5
- ean8
- ean8composite
- flattermarken
- gs1-128
- gs1-128composite
- gs1-cc
- gs1datamatrix
- gs1datamatrixrectangular
- gs1dldatamatrix
- gs1dlqrcode
- gs1dotcode
- gs1northamericancoupon
- gs1qrcode
- hanxin
- hibcazteccode
- hibccodablockf
- hibccode128
- hibccode39
- hibcdatamatrix
- hibcdatamatrixrectangular
- hibcmicropdf417
- hibcpdf417
- hibcqrcode
- iata2of5
- identcode
- industrial2of5
- interleaved2of5
- isbn
- ismn
- issn
- itf14
- japanpost
- kix
- leitcode
- mailmark
- mands
- matrix2of5
- maxicode
- micropdf417
- microqrcode
- msi
- onecode
- pdf417
- pdf417compact
- pharmacode
- pharmacode2
- planet
- plessey
- posicode
- postnet
- pzn
- qrcode
- rationalizedCodabar
- raw
- rectangularmicroqrcode
- royalmail
- sscc18
- swissqrcode
- symbol
- telepen
- telepennumeric
- ultracode
- upca
- upcacomposite
- upce
- upcecomposite
returnAnnotatedImage:
type: boolean
description: Optionally, return the annotated image as a data URL in the response
settings:
type: object
properties:
accuracy:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
androidCameraId:
anyOf:
- type: string
- type: 'null'
appId:
anyOf:
- type: string
- type: 'null'
appName:
anyOf:
- type: string
- type: 'null'
appVersion:
anyOf:
- type: string
- type: 'null'
autoFocusRangeRestriction:
anyOf:
- const: far
- const: near
- const: none
- type: 'null'
brand:
anyOf:
- type: string
- type: 'null'
build:
anyOf:
- type: string
- type: 'null'
calibrationConfidence:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
calibrationId:
anyOf:
- type: string
- type: 'null'
calibrationVersion:
anyOf:
- type: string
- type: 'null'
calibrationZoom:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
cameraId:
anyOf:
- type: string
- type: 'null'
captureSource:
anyOf:
- type: string
- type: 'null'
deviceId:
anyOf:
- type: string
- type: 'null'
deviceName:
anyOf:
- type: string
- type: 'null'
deviceType:
anyOf:
- const: DESKTOP
- const: PHONE
- const: TABLET
- const: TV
- const: UNKNOWN
- type: 'null'
dragonBackend:
anyOf:
- type: string
- type: 'null'
dragonErrorCode:
anyOf:
- type: string
- type: 'null'
exposureDuration:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
exposureValue:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
flashMode:
anyOf:
- const: auto
- const: 'off'
- const: 'on'
- const: torch
- type: 'null'
focusDepth:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
focusMode:
anyOf:
- type: string
- type: 'null'
focusSetPoint:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
focusX:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
focusY:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
iso:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
latitude:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
lensPosition:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
longitude:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
modelId:
anyOf:
- type: string
- type: 'null'
modelName:
anyOf:
- type: string
- type: 'null'
osBuildId:
anyOf:
- type: string
- type: 'null'
osName:
anyOf:
- type: string
- type: 'null'
osVersion:
anyOf:
- type: string
- type: 'null'
selectedLens:
anyOf:
- type: string
- type: 'null'
tapToFocusCount:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
usbDeviceName:
anyOf:
- type: string
- type: 'null'
usbProductId:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
usbVendorId:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
zoom:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
BindDustImage:
type: object
properties:
data:
anyOf:
- type: string
description: File or base64-encoded image data of the DUST tag to be bound.
pattern: ^data:image\/(png|jpeg);base64,[A-Za-z0-9+/]+={0,2}$
- description: File or base64-encoded image data of the DUST tag to be bound.
description: File or base64-encoded image data of the DUST tag to be bound.
tagType:
const: DUST
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
options:
anyOf:
- type: string
description: In multipart submissions, provide a JSON string of [BindDustImageOptions](#model/BindDustImageOptions);
otherwise, a direct object is also accepted.
- $ref: '#/components/schemas/BindDustImageOptions'
tagDescription:
type: string
required:
- data
- tagType
- threadId
additionalProperties: false
BindDustFingerprintOptions:
type: object
description: In multipart submissions, provide a JSON string of [BindDustFingerprintOptions](#model/BindDustFingerprintOptions);
otherwise, a direct object is also accepted.
properties:
enrollmentSessionId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
indexing:
enum:
- default
- none
metadata:
type: object
properties:
format:
enum:
- auspost
- azteccode
- azteccodecompact
- aztecrune
- bc412
- channelcode
- codablockf
- code11
- code128
- code16k
- code2of5
- code32
- code39
- code39ext
- code49
- code93
- code93ext
- codeone
- coop2of5
- daft
- databarexpanded
- databarexpandedcomposite
- databarexpandedstacked
- databarexpandedstackedcomposite
- databarlimited
- databarlimitedcomposite
- databaromni
- databaromnicomposite
- databarstacked
- databarstackedcomposite
- databarstackedomni
- databarstackedomnicomposite
- databartruncated
- databartruncatedcomposite
- datalogic2of5
- datamatrix
- datamatrixrectangular
- datamatrixrectangularextension
- dotcode
- ean13
- ean13composite
- ean14
- ean2
- ean5
- ean8
- ean8composite
- flattermarken
- gs1-128
- gs1-128composite
- gs1-cc
- gs1datamatrix
- gs1datamatrixrectangular
- gs1dldatamatrix
- gs1dlqrcode
- gs1dotcode
- gs1northamericancoupon
- gs1qrcode
- hanxin
- hibcazteccode
- hibccodablockf
- hibccode128
- hibccode39
- hibcdatamatrix
- hibcdatamatrixrectangular
- hibcmicropdf417
- hibcpdf417
- hibcqrcode
- iata2of5
- identcode
- industrial2of5
- interleaved2of5
- isbn
- ismn
- issn
- itf14
- japanpost
- kix
- leitcode
- mailmark
- mands
- matrix2of5
- maxicode
- micropdf417
- microqrcode
- msi
- onecode
- pdf417
- pdf417compact
- pharmacode
- pharmacode2
- planet
- plessey
- posicode
- postnet
- pzn
- qrcode
- rationalizedCodabar
- raw
- rectangularmicroqrcode
- royalmail
- sscc18
- swissqrcode
- symbol
- telepen
- telepennumeric
- ultracode
- upca
- upcacomposite
- upce
- upcecomposite
returnAnnotatedImage:
type: boolean
description: Optionally, return the annotated image as a data URL in the response
BindDustFingerprint:
type: object
properties:
fingerprintId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
tagType:
const: DUST
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
options:
anyOf:
- type: string
description: In multipart submissions, provide a JSON string of [BindDustFingerprintOptions](#model/BindDustFingerprintOptions);
otherwise, a direct object is also accepted.
- $ref: '#/components/schemas/BindDustFingerprintOptions'
tagDescription:
type: string
required:
- fingerprintId
- tagType
- threadId
additionalProperties: false
BulkVerifyTagList:
type: array
description: In multipart submissions, provide a JSON string array of tags to verify against; otherwise, a direct array
is also accepted. If more than one tag is provided, verification will succeed if any single tag matches the thread.
items:
type: object
properties:
tagId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
tagType:
enum:
- BAR_CODE
- DATA_MATRIX
- DUST
- NFC
- QR
required:
- tagId
- tagType
DustTagOptions:
type: object
description: In multipart submissions, provide a JSON string of [DustTagOptions](#model/DustTagOptions); otherwise,
a direct object is also accepted.
properties:
indexing:
enum:
- default
- none
metadata:
type: object
properties:
format:
enum:
- auspost
- azteccode
- azteccodecompact
- aztecrune
- bc412
- channelcode
- codablockf
- code11
- code128
- code16k
- code2of5
- code32
- code39
- code39ext
- code49
- code93
- code93ext
- codeone
- coop2of5
- daft
- databarexpanded
- databarexpandedcomposite
- databarexpandedstacked
- databarexpandedstackedcomposite
- databarlimited
- databarlimitedcomposite
- databaromni
- databaromnicomposite
- databarstacked
- databarstackedcomposite
- databarstackedomni
- databarstackedomnicomposite
- databartruncated
- databartruncatedcomposite
- datalogic2of5
- datamatrix
- datamatrixrectangular
- datamatrixrectangularextension
- dotcode
- ean13
- ean13composite
- ean14
- ean2
- ean5
- ean8
- ean8composite
- flattermarken
- gs1-128
- gs1-128composite
- gs1-cc
- gs1datamatrix
- gs1datamatrixrectangular
- gs1dldatamatrix
- gs1dlqrcode
- gs1dotcode
- gs1northamericancoupon
- gs1qrcode
- hanxin
- hibcazteccode
- hibccodablockf
- hibccode128
- hibccode39
- hibcdatamatrix
- hibcdatamatrixrectangular
- hibcmicropdf417
- hibcpdf417
- hibcqrcode
- iata2of5
- identcode
- industrial2of5
- interleaved2of5
- isbn
- ismn
- issn
- itf14
- japanpost
- kix
- leitcode
- mailmark
- mands
- matrix2of5
- maxicode
- micropdf417
- microqrcode
- msi
- onecode
- pdf417
- pdf417compact
- pharmacode
- pharmacode2
- planet
- plessey
- posicode
- postnet
- pzn
- qrcode
- rationalizedCodabar
- raw
- rectangularmicroqrcode
- royalmail
- sscc18
- swissqrcode
- symbol
- telepen
- telepennumeric
- ultracode
- upca
- upcacomposite
- upce
- upcecomposite
settings:
type: object
properties:
accuracy:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
androidCameraId:
anyOf:
- type: string
- type: 'null'
appId:
anyOf:
- type: string
- type: 'null'
appName:
anyOf:
- type: string
- type: 'null'
appVersion:
anyOf:
- type: string
- type: 'null'
autoFocusRangeRestriction:
anyOf:
- const: far
- const: near
- const: none
- type: 'null'
brand:
anyOf:
- type: string
- type: 'null'
build:
anyOf:
- type: string
- type: 'null'
calibrationConfidence:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
calibrationId:
anyOf:
- type: string
- type: 'null'
calibrationVersion:
anyOf:
- type: string
- type: 'null'
calibrationZoom:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
cameraId:
anyOf:
- type: string
- type: 'null'
captureSource:
anyOf:
- type: string
- type: 'null'
deviceId:
anyOf:
- type: string
- type: 'null'
deviceName:
anyOf:
- type: string
- type: 'null'
deviceType:
anyOf:
- const: DESKTOP
- const: PHONE
- const: TABLET
- const: TV
- const: UNKNOWN
- type: 'null'
dragonBackend:
anyOf:
- type: string
- type: 'null'
dragonErrorCode:
anyOf:
- type: string
- type: 'null'
exposureDuration:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
exposureValue:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
flashMode:
anyOf:
- const: auto
- const: 'off'
- const: 'on'
- const: torch
- type: 'null'
focusDepth:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
focusMode:
anyOf:
- type: string
- type: 'null'
focusSetPoint:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
focusX:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
focusY:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
iso:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
latitude:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
lensPosition:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
longitude:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
modelId:
anyOf:
- type: string
- type: 'null'
modelName:
anyOf:
- type: string
- type: 'null'
osBuildId:
anyOf:
- type: string
- type: 'null'
osName:
anyOf:
- type: string
- type: 'null'
osVersion:
anyOf:
- type: string
- type: 'null'
selectedLens:
anyOf:
- type: string
- type: 'null'
tapToFocusCount:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
usbDeviceName:
anyOf:
- type: string
- type: 'null'
usbProductId:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
usbVendorId:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
zoom:
anyOf:
- type: number
description: A number or a string that can be parsed into a number
- type: string
description: A number or a string that can be parsed into a number
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- type: 'null'
UuidList:
type: array
description: In multipart submissions, provide a JSON string array of team IDs to limit the search to; otherwise, a
direct array is also accepted.
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
IdentifyTextTagPayload:
type: object
properties:
data:
type: string
tagType:
enum:
- BAR_CODE
- DATA_MATRIX
- NFC
- QR
options:
anyOf:
- type: string
description: In multipart submissions, provide a JSON string of [TagOptions](#model/TagOptions); otherwise, a
direct object is also accepted.
- $ref: '#/components/schemas/TagOptions'
searchTeamIds:
anyOf:
- type: string
description: In multipart submissions, provide a JSON string array of team IDs to limit the search to; otherwise,
a direct array is also accepted.
- $ref: '#/components/schemas/UuidList'
description: In multipart submissions, provide a JSON string array of team IDs to limit the search to; otherwise,
a direct array is also accepted.
required:
- data
- tagType
IdentifyDustPayload:
type: object
properties:
data:
anyOf:
- type: string
description: Image file or base64-encoded image data URL of the tag to be extracted and bound.
pattern: ^data:image\/(png|jpeg);base64,[A-Za-z0-9+/]+={0,2}$
- description: Image file or base64-encoded image data URL of the tag to be extracted and bound.
description: Image file or base64-encoded image data URL of the tag to be extracted and bound.
tagType:
const: DUST
options:
anyOf:
- type: string
description: In multipart submissions, provide a JSON string of [DustTagOptions](#model/DustTagOptions); otherwise,
a direct object is also accepted.
- $ref: '#/components/schemas/DustTagOptions'
searchTeamIds:
anyOf:
- type: string
description: In multipart submissions, provide a JSON string array of team IDs to limit the search to; otherwise,
a direct array is also accepted.
- $ref: '#/components/schemas/UuidList'
description: In multipart submissions, provide a JSON string array of team IDs to limit the search to; otherwise,
a direct array is also accepted.
required:
- data
- tagType
IdentifyTagIdOnlyPayload:
type: object
properties:
tagId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
tagType:
const: ANY
searchTeamIds:
anyOf:
- type: string
description: In multipart submissions, provide a JSON string array of team IDs to limit the search to; otherwise,
a direct array is also accepted.
- $ref: '#/components/schemas/UuidList'
description: In multipart submissions, provide a JSON string array of team IDs to limit the search to; otherwise,
a direct array is also accepted.
required:
- tagId
- tagType
TagUpdateResponse:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
tagId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- archivedAt
- isPrivate
- tagId
TagUpdateRequest:
type: object
description: Update an identifier's name, description, privacy, and archive state. The value/type are immutable.
properties:
tagId:
anyOf:
- type: string
description: ID of the tag to update
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: ID of the tag to update
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: ID of the tag to update
format: uuid
description: ID of the tag to update
format: uuid
threadId:
anyOf:
- type: string
description: ID of the thread the tag is bound to
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: ID of the thread the tag is bound to
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: ID of the thread the tag is bound to
format: uuid
description: ID of the thread the tag is bound to
format: uuid
archivedAt:
anyOf:
- type: string
description: ISO 8601 timestamp to archive the identifier, or null to restore
- type: 'null'
description: ISO 8601 timestamp to archive the identifier, or null to restore
description: ISO 8601 timestamp to archive the identifier, or null to restore
description:
anyOf:
- type: string
description: New description to set for the tag
- type: 'null'
description: New description to set for the tag
description: New description to set for the tag
isPrivate:
type: boolean
name:
anyOf:
- type: string
description: New name to set for the tag
- type: 'null'
description: New name to set for the tag
description: New name to set for the tag
required:
- tagId
- threadId
TransferTeamRef:
type: object
properties:
name:
anyOf:
- type: string
- type: 'null'
orgId:
anyOf:
- type: string
- type: 'null'
orgLogo:
anyOf:
- type: string
- type: 'null'
orgName:
anyOf:
- type: string
- type: 'null'
teamId:
type: string
required:
- name
- orgId
- orgLogo
- orgName
- teamId
TransferListItem:
type: object
properties:
abandonedAt:
anyOf:
- type: string
- type: 'null'
completedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
itemCount:
type: number
kind:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
primaryThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
respondentId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
sourceTeam:
$ref: '#/components/schemas/TransferTeamRef'
sourceTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
startedAt:
anyOf:
- type: string
- type: 'null'
status:
type: string
targetTeam:
anyOf:
- $ref: '#/components/schemas/TransferTeamRef'
- type: 'null'
targetTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
stateReasons:
anyOf:
- type: array
items:
$ref: '#/components/schemas/FabricStateChangeReason'
- type: 'null'
required:
- abandonedAt
- completedAt
- createdAt
- createdById
- description
- id
- itemCount
- kind
- metadata
- name
- primaryThreadId
- respondentId
- sourceTeam
- sourceTeamId
- startedAt
- status
- targetTeam
- targetTeamId
- updatedAt
TransferListResponse:
type: object
properties:
total:
type: number
transfers:
type: array
items:
$ref: '#/components/schemas/TransferListItem'
required:
- total
- transfers
TransferOperation:
type: object
properties:
abandonedAt:
anyOf:
- type: string
- type: 'null'
completedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
kind:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
primaryThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
respondentId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
sourceTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
startedAt:
anyOf:
- type: string
- type: 'null'
status:
type: string
targetTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
stateReasons:
anyOf:
- type: array
items:
$ref: '#/components/schemas/FabricStateChangeReason'
- type: 'null'
required:
- abandonedAt
- completedAt
- createdAt
- createdById
- description
- id
- kind
- metadata
- name
- primaryThreadId
- respondentId
- sourceTeamId
- startedAt
- status
- targetTeamId
- updatedAt
TransferJobProgress:
type: object
properties:
attempts:
type: number
isRunning:
type: boolean
lastError:
anyOf:
- type: string
- type: 'null'
maxAttempts:
type: number
nextRunAt:
anyOf:
- type: string
- type: 'null'
required:
- attempts
- isRunning
- lastError
- maxAttempts
- nextRunAt
TransferThreadLink:
type: object
properties:
sourceId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
targetId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- sourceId
- targetId
TransferSelectedThread:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
excludedPartCount:
anyOf:
- type: integer
maximum: 2147483647
minimum: -2147483648
- type: 'null'
fields:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
isDirectSelection:
type: boolean
kind:
type: string
name:
anyOf:
- type: string
- type: 'null'
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
parentAssemblyThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
relation:
anyOf:
- type: string
- type: 'null'
resources:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
tags:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
required:
- createdAt
- description
- excludedPartCount
- fields
- id
- isDirectSelection
- kind
- name
- operationId
- parentAssemblyThreadId
- relation
- resources
- tags
- threadId
- updatedAt
TransferGetResponse:
type: object
properties:
items:
type: array
items:
anyOf:
- type: object
properties:
createdAt:
type: string
data:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
excludedPartCount:
anyOf:
- type: integer
maximum: 2147483647
minimum: -2147483648
- type: 'null'
fields:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
const: assembly
name:
anyOf:
- type: string
- type: 'null'
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
parentAssemblyThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
relation:
anyOf:
- type: string
- type: 'null'
resources:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
tags:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
required:
- createdAt
- description
- excludedPartCount
- fields
- kind
- name
- operationId
- parentAssemblyThreadId
- relation
- resources
- tags
- threadId
- updatedAt
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
intent:
const: assembly
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
rootManifestThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
required:
- createdAt
- data
- id
- intent
- operationId
- rootManifestThreadId
- updatedAt
- type: object
properties:
createdAt:
type: string
data:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
excludedPartCount:
anyOf:
- type: integer
maximum: 2147483647
minimum: -2147483648
- type: 'null'
fields:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
const: unit
name:
anyOf:
- type: string
- type: 'null'
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
parentAssemblyThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
relation:
anyOf:
- type: string
- type: 'null'
resources:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
tags:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
required:
- createdAt
- description
- excludedPartCount
- fields
- kind
- name
- operationId
- parentAssemblyThreadId
- relation
- resources
- tags
- threadId
- updatedAt
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
intent:
const: unit
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
rootManifestThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
required:
- createdAt
- data
- id
- intent
- operationId
- rootManifestThreadId
- updatedAt
- type: object
properties:
createdAt:
type: string
data:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
itemIds:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
const: category
name:
type: string
updatedAt:
type: string
required:
- createdAt
- description
- itemIds
- kind
- name
- updatedAt
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
intent:
const: category
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
rootManifestThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
required:
- createdAt
- data
- id
- intent
- operationId
- rootManifestThreadId
- updatedAt
- type: object
properties:
createdAt:
type: string
data:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
itemIds:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
const: folder
name:
type: string
updatedAt:
type: string
required:
- createdAt
- description
- itemIds
- kind
- name
- updatedAt
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
intent:
const: folder
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
rootManifestThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
required:
- createdAt
- data
- id
- intent
- operationId
- rootManifestThreadId
- updatedAt
jobProgress:
anyOf:
- $ref: '#/components/schemas/TransferJobProgress'
- type: 'null'
links:
type: array
items:
$ref: '#/components/schemas/TransferThreadLink'
operation:
type: object
properties:
abandonedAt:
anyOf:
- type: string
- type: 'null'
completedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
kind:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
primaryThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
respondentId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
sourceTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
startedAt:
anyOf:
- type: string
- type: 'null'
status:
type: string
targetTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
stateReasons:
anyOf:
- type: array
items:
$ref: '#/components/schemas/FabricStateChangeReason'
- type: 'null'
required:
- abandonedAt
- completedAt
- createdAt
- createdById
- description
- id
- kind
- metadata
- name
- primaryThreadId
- respondentId
- sourceTeamId
- startedAt
- status
- targetTeamId
- updatedAt
selectedThreads:
type: array
items:
$ref: '#/components/schemas/TransferSelectedThread'
sourceTeam:
$ref: '#/components/schemas/TransferTeamRef'
targetTeam:
anyOf:
- $ref: '#/components/schemas/TransferTeamRef'
- type: 'null'
required:
- items
- jobProgress
- links
- operation
- selectedThreads
- sourceTeam
- targetTeam
TransferPreviewOrganization:
type: object
properties:
description:
anyOf:
- type: string
- type: 'null'
kind:
enum:
- category
- folder
manifestItemId:
type: string
memberPreviewThreadIds:
type: array
items:
type: string
name:
anyOf:
- type: string
- type: 'null'
required:
- description
- kind
- manifestItemId
- memberPreviewThreadIds
- name
TransferPreviewAssetBucket:
type: object
properties:
certificates:
type: array
items:
type: object
properties:
capturedAt:
type: string
data:
type: object
source:
type: string
version:
const: v1
required:
- capturedAt
- data
- source
- version
fields:
type: array
items:
type: object
properties:
capturedAt:
type: string
data:
type: object
source:
type: string
version:
const: v1
required:
- capturedAt
- data
- source
- version
resources:
type: array
items:
type: object
properties:
capturedAt:
type: string
data:
type: object
source:
type: string
version:
const: v1
required:
- capturedAt
- data
- source
- version
tags:
type: array
items:
type: object
properties:
capturedAt:
type: string
data:
type: object
source:
type: string
version:
const: v1
required:
- capturedAt
- data
- source
- version
required:
- certificates
- fields
- resources
- tags
TransferPreviewThread:
type: object
properties:
contributions:
type: array
items:
type: object
properties:
manifestItemId:
type: string
via:
enum:
- assembly
- category
- direct
- folder
required:
- manifestItemId
- via
copy:
$ref: '#/components/schemas/TransferPreviewAssetBucket'
description:
anyOf:
- type: string
- type: 'null'
disclosure:
$ref: '#/components/schemas/TransferPreviewAssetBucket'
kind:
enum:
- assembly
- unit
name:
anyOf:
- type: string
- type: 'null'
previewThreadId:
type: string
sourceThreadId:
type: string
thumbnailResourceId:
anyOf:
- type: string
- type: 'null'
assembly:
type: object
properties:
parts:
type: array
items:
type: object
properties:
childPreviewThreadId:
type: string
parentPreviewThreadId:
type: string
relation:
enum:
- default
- private
required:
- childPreviewThreadId
- parentPreviewThreadId
- relation
required:
- parts
required:
- contributions
- copy
- description
- disclosure
- kind
- name
- previewThreadId
- sourceThreadId
- thumbnailResourceId
TransferPreviewResponse:
type: object
properties:
generatedAt:
type: string
operationId:
type: string
organization:
type: array
items:
$ref: '#/components/schemas/TransferPreviewOrganization'
primaryPreviewThreadId:
anyOf:
- type: string
- type: 'null'
sourceTeam:
$ref: '#/components/schemas/TransferTeamRef'
targetTeam:
anyOf:
- $ref: '#/components/schemas/TransferTeamRef'
- type: 'null'
threads:
type: array
items:
$ref: '#/components/schemas/TransferPreviewThread'
required:
- generatedAt
- operationId
- organization
- primaryPreviewThreadId
- sourceTeam
- targetTeam
- threads
TransferPreviewResourceContentResponse:
type: object
properties:
url:
type: string
required:
- url
FabricTeamDisplay:
type: object
properties:
teamId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
orgId:
anyOf:
- type: string
- type: 'null'
orgLogo:
anyOf:
- type: string
- type: 'null'
orgName:
anyOf:
- type: string
- type: 'null'
teamName:
anyOf:
- type: string
- type: 'null'
required:
- teamId
FabricGraphEdge:
type: object
properties:
derivationTime:
type: string
kind:
type: string
linkId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
operationId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
rootId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
sourceId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
sourceName:
type: string
sourceTeamId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
targetId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
targetTeamId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
sourceTeam:
$ref: '#/components/schemas/FabricTeamDisplay'
targetTeam:
$ref: '#/components/schemas/FabricTeamDisplay'
required:
- derivationTime
- kind
- linkId
- operationId
- rootId
- sourceId
- sourceName
- sourceTeamId
- targetId
- targetTeamId
FabricGraphNode:
type: object
properties:
canView:
type: boolean
description:
anyOf:
- type: string
- type: 'null'
isOwn:
type: boolean
kind:
anyOf:
- const: assembly
- const: unit
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
parentAssembly:
anyOf:
- type: object
properties:
name:
type: string
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- name
- threadId
- type: 'null'
partCount:
anyOf:
- type: number
- type: 'null'
teamId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
thumbnail:
anyOf:
- type: string
- type: 'null'
versionCount:
type: number
team:
$ref: '#/components/schemas/FabricTeamDisplay'
required:
- canView
- description
- isOwn
- kind
- name
- parentAssembly
- partCount
- teamId
- threadId
- thumbnail
- versionCount
FabricTransferReceipt:
type: object
properties:
derivationTime:
type: string
kind:
const: transfer
linkId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
operationId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
rootId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
sourceId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
sourceName:
type: string
sourceTeamId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
targetTeamId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
sourceTeam:
$ref: '#/components/schemas/FabricTeamDisplay'
targetTeam:
$ref: '#/components/schemas/FabricTeamDisplay'
required:
- derivationTime
- kind
- linkId
- operationId
- rootId
- sourceId
- sourceName
- sourceTeamId
- targetTeamId
FabricGraphResponse:
type: object
properties:
edges:
type: array
items:
$ref: '#/components/schemas/FabricGraphEdge'
nodes:
type: array
items:
$ref: '#/components/schemas/FabricGraphNode'
receipts:
type: array
items:
$ref: '#/components/schemas/FabricTransferReceipt'
required:
- edges
- nodes
- receipts
FabricDisclosedEvent:
type: object
properties:
action:
type: string
maxLength: 64
comment:
anyOf:
- type: string
- type: 'null'
created:
type: string
declaredActor:
anyOf:
- type: object
properties:
id:
type: string
maxLength: 128
minLength: 1
displayName:
type: string
maxLength: 128
role:
type: string
maxLength: 64
system:
type: string
maxLength: 64
required:
- id
- type: 'null'
eventId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
geolocation:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
ipAddress:
anyOf:
- type: string
- type: 'null'
namespace:
anyOf:
- type: string
- type: 'null'
occurred:
type: string
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
operationName:
anyOf:
- type: string
- type: 'null'
payload:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
payload_version:
type: string
maxLength: 16
redacted:
type: boolean
topic:
anyOf:
- type: string
- type: 'null'
transactionId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
userAgent:
anyOf:
- type: string
- type: 'null'
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userOrgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
to_bundles:
type: array
items:
type: object
properties:
bundleId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
childOfId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
kind:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
hasChildren:
type: boolean
idPath:
type: array
items:
type: string
isSharedOut:
type: boolean
path:
type: array
items:
type: string
permissions:
type: object
properties:
can_edit:
type: boolean
default: false
can_publish:
type: boolean
default: false
can_share:
type: boolean
default: false
can_transfer:
type: boolean
default: false
can_view:
type: boolean
default: false
threadCount:
type: number
required:
- bundleId
- childOfId
- createdAt
- description
- kind
- name
- ownerId
- updatedAt
to_collections:
type: array
items:
type: object
properties:
collectionId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
required:
- collectionId
- createdAt
- description
- kind
- name
- ownerId
- updatedAt
to_fabric_operations:
type: array
items:
type: object
properties:
abandonedAt:
anyOf:
- type: string
- type: 'null'
completedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
kind:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
primaryThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
respondentId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
sourceTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
startedAt:
anyOf:
- type: string
- type: 'null'
status:
type: string
targetTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
stateReasons:
anyOf:
- type: array
items:
$ref: '#/components/schemas/FabricStateChangeReason'
- type: 'null'
required:
- abandonedAt
- completedAt
- createdAt
- createdById
- description
- id
- kind
- metadata
- name
- primaryThreadId
- respondentId
- sourceTeamId
- startedAt
- status
- targetTeamId
- updatedAt
to_fields:
type: array
items:
anyOf:
- $ref: '#/components/schemas/ThreadFieldResource'
- $ref: '#/components/schemas/ThreadFieldBoolean'
- $ref: '#/components/schemas/ThreadFieldDate'
- $ref: '#/components/schemas/ThreadFieldDateRange'
- $ref: '#/components/schemas/ThreadFieldDatetime'
- $ref: '#/components/schemas/ThreadFieldDuration'
- $ref: '#/components/schemas/ThreadFieldEmail'
- $ref: '#/components/schemas/ThreadFieldLongText'
- $ref: '#/components/schemas/ThreadFieldNumber'
- $ref: '#/components/schemas/ThreadFieldJson'
- $ref: '#/components/schemas/ThreadFieldPhone'
- $ref: '#/components/schemas/ThreadFieldSelect'
- $ref: '#/components/schemas/ThreadFieldSelectMany'
- $ref: '#/components/schemas/ThreadFieldTags'
- $ref: '#/components/schemas/ThreadFieldText'
- $ref: '#/components/schemas/ThreadFieldThread'
- $ref: '#/components/schemas/ThreadFieldTime'
- $ref: '#/components/schemas/ThreadFieldUrl'
to_orgs:
type: array
items:
type: object
properties:
createdAt:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
website:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- logo
- name
- orgId
- slug
- updatedAt
- website
to_relationships:
type: array
items:
type: object
properties:
archived:
type: boolean
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
forwardLabel:
type: string
inverseLabel:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
relId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
type: string
updatedAt:
type: string
required:
- archived
- createdAt
- description
- forwardLabel
- inverseLabel
- metadata
- name
- ownerId
- relId
- slug
- updatedAt
to_resources:
type: array
items:
$ref: '#/components/schemas/Resource'
to_tags:
type: array
items:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagType:
type: string
threadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
value:
type: string
indexing:
anyOf:
- const: default
- const: none
- type: 'null'
isBound:
anyOf:
- type: boolean
- type: 'null'
required:
- archivedAt
- createdAt
- description
- isPrivate
- metadata
- name
- ownerId
- tagId
- tagType
- threadId
- transferId
- transferredAt
- updatedAt
- value
to_teams:
type: array
items:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
to_thread_templates:
type: array
items:
$ref: '#/components/schemas/ThreadTemplate'
to_threads:
type: array
items:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
userKind:
enum:
- human
- service
userOrg:
type: object
properties:
createdAt:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
website:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- logo
- name
- orgId
- slug
- updatedAt
- website
userProfile:
$ref: '#/components/schemas/Principal'
userTeam:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
required:
- action
- comment
- created
- declaredActor
- eventId
- geolocation
- ipAddress
- namespace
- occurred
- operationId
- operationName
- payload
- payload_version
- redacted
- topic
- transactionId
- userAgent
- userId
- userOrgId
- userTeamId
TransferPreviewThreadEventsResponse:
type: object
properties:
events:
type: array
items:
$ref: '#/components/schemas/FabricDisclosedEvent'
required:
- events
PostTransferMessageRequest:
type: object
properties:
message:
type: string
minLength: 1
required:
- message
CreateSliceRequest:
type: object
properties:
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
copyThumbnail:
type: boolean
default: true
bundleId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
description:
anyOf:
- type: string
- type: 'null'
fields:
anyOf:
- type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- type: 'null'
linkOnly:
type: boolean
name:
type: string
maxLength: 255
resources:
anyOf:
- type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- type: 'null'
tags:
anyOf:
- type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- type: 'null'
required:
- threadId
SliceCreateResponse:
type: object
properties:
linkId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
operation:
type: object
properties:
abandonedAt:
anyOf:
- type: string
- type: 'null'
completedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
kind:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
primaryThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
respondentId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
sourceTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
startedAt:
anyOf:
- type: string
- type: 'null'
status:
type: string
targetTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
stateReasons:
anyOf:
- type: array
items:
$ref: '#/components/schemas/FabricStateChangeReason'
- type: 'null'
required:
- abandonedAt
- completedAt
- createdAt
- createdById
- description
- id
- kind
- metadata
- name
- primaryThreadId
- respondentId
- sourceTeamId
- startedAt
- status
- targetTeamId
- updatedAt
sourceThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
targetThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- linkId
- operation
- sourceThreadId
- targetThreadId
SliceFieldValue:
type: object
properties:
name:
type: string
type:
type: string
value: {}
fieldId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- name
- type
- value
SliceTargetInput:
type: object
properties:
description:
anyOf:
- type: string
- type: 'null'
fields:
type: array
items:
$ref: '#/components/schemas/SliceFieldValue'
name:
type: string
maxLength: 255
CreateManySliceRequest:
type: object
properties:
targets:
type: array
items:
$ref: '#/components/schemas/SliceTargetInput'
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
copyThumbnail:
type: boolean
default: true
bundleId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
fields:
anyOf:
- type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- type: 'null'
linkOnly:
type: boolean
resources:
anyOf:
- type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- type: 'null'
sourceFields:
type: array
items:
$ref: '#/components/schemas/SliceFieldValue'
tags:
anyOf:
- type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- type: 'null'
required:
- targets
- threadId
SliceResult:
type: object
properties:
linkId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
sourceThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
targetThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- linkId
- sourceThreadId
- targetThreadId
SliceCreateManyResponse:
type: object
properties:
operation:
type: object
properties:
abandonedAt:
anyOf:
- type: string
- type: 'null'
completedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
kind:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
primaryThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
respondentId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
sourceTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
startedAt:
anyOf:
- type: string
- type: 'null'
status:
type: string
targetTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
stateReasons:
anyOf:
- type: array
items:
$ref: '#/components/schemas/FabricStateChangeReason'
- type: 'null'
required:
- abandonedAt
- completedAt
- createdAt
- createdById
- description
- id
- kind
- metadata
- name
- primaryThreadId
- respondentId
- sourceTeamId
- startedAt
- status
- targetTeamId
- updatedAt
results:
type: array
items:
$ref: '#/components/schemas/SliceResult'
required:
- operation
- results
SliceLink:
type: object
properties:
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
rootId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
sourceId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
targetId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- id
- rootId
- sourceId
- targetId
SliceGetResponse:
type: object
properties:
links:
type: array
items:
$ref: '#/components/schemas/SliceLink'
operation:
type: object
properties:
abandonedAt:
anyOf:
- type: string
- type: 'null'
completedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
kind:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
primaryThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
respondentId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
sourceTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
startedAt:
anyOf:
- type: string
- type: 'null'
status:
type: string
targetTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
stateReasons:
anyOf:
- type: array
items:
$ref: '#/components/schemas/FabricStateChangeReason'
- type: 'null'
required:
- abandonedAt
- completedAt
- createdAt
- createdById
- description
- id
- kind
- metadata
- name
- primaryThreadId
- respondentId
- sourceTeamId
- startedAt
- status
- targetTeamId
- updatedAt
required:
- links
- operation
FabricLinkDisclosureEntry:
type: object
properties:
assetId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
kind:
type: string
snapshot:
anyOf:
- type: object
- type: 'null'
status:
type: string
statusUpdatedAt:
type: string
required:
- assetId
- kind
- snapshot
- status
- statusUpdatedAt
FabricThreadProfile:
type: object
properties:
description:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
thumbnail:
anyOf:
- type: string
- type: 'null'
required:
- description
- name
- thumbnail
FabricThreadVersion:
type: object
properties:
derivationTime:
type: string
disclosures:
type: array
items:
$ref: '#/components/schemas/FabricLinkDisclosureEntry'
eventCursorOccurredAt:
anyOf:
- type: string
- type: 'null'
kind:
type: string
linkId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
sourceName:
type: string
sourceThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
targetThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
thread:
anyOf:
- $ref: '#/components/schemas/FabricThreadProfile'
- type: 'null'
required:
- derivationTime
- disclosures
- eventCursorOccurredAt
- kind
- linkId
- sourceName
- sourceThreadId
- targetThreadId
- thread
FabricThreadVersionsResponse:
type: object
properties:
liveThreadAccess:
type: boolean
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
versions:
type: array
items:
$ref: '#/components/schemas/FabricThreadVersion'
required:
- liveThreadAccess
- threadId
- versions
FabricLinkContextResponse:
type: object
properties:
disclosures:
type: array
items:
$ref: '#/components/schemas/FabricLinkDisclosureEntry'
eventCursorOccurredAt:
anyOf:
- type: string
- type: 'null'
link:
$ref: '#/components/schemas/FabricGraphEdge'
required:
- disclosures
- eventCursorOccurredAt
- link
FabricSourceThreadContextThread:
type: object
properties:
sourceName:
type: string
sourceTeamId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- sourceName
- sourceTeamId
- threadId
FabricSourceThreadContextResponse:
type: object
properties:
disclosures:
type: array
items:
$ref: '#/components/schemas/FabricLinkDisclosureEntry'
eventCursorOccurredAt:
anyOf:
- type: string
- type: 'null'
thread:
$ref: '#/components/schemas/FabricSourceThreadContextThread'
required:
- disclosures
- eventCursorOccurredAt
- thread
FabricLinkResourceContentResponse:
type: object
properties:
url:
type: string
required:
- url
FabricLinkEventsResponse:
type: object
properties:
eventCursorOccurredAt:
anyOf:
- type: string
- type: 'null'
events:
type: array
items:
$ref: '#/components/schemas/FabricDisclosedEvent'
required:
- eventCursorOccurredAt
- events
FabricLinkRevisionEntry:
type: object
properties:
createdAt:
type: string
createdById:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
disclosures:
type: array
items:
$ref: '#/components/schemas/FabricLinkDisclosureEntry'
eventCursorOccurredAt:
anyOf:
- type: string
- type: 'null'
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
reason:
anyOf:
- type: string
- type: 'null'
sourceName:
type: string
type:
type: string
required:
- createdAt
- createdById
- disclosures
- eventCursorOccurredAt
- id
- reason
- sourceName
- type
FabricLinkTimelineResponse:
type: object
properties:
revisions:
type: array
items:
$ref: '#/components/schemas/FabricLinkRevisionEntry'
required:
- revisions
FabricLinkAssemblyPart:
type: object
properties:
isSubassembly:
type: boolean
name:
anyOf:
- type: string
- type: 'null'
parentAssemblyThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
relation:
anyOf:
- const: default
- const: private
- type: 'null'
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- isSubassembly
- name
- parentAssemblyThreadId
- relation
- threadId
FabricLinkAssemblyResponse:
type: object
properties:
assemblyThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
linkId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
parts:
type: array
items:
$ref: '#/components/schemas/FabricLinkAssemblyPart'
required:
- assemblyThreadId
- linkId
- parts
FabricDisclosureAssetRef:
type: object
properties:
assetId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
kind:
enum:
- certificate
- field
- resource
- tag
- thread
required:
- assetId
- kind
FabricDisclosurePreviewRequest:
type: object
properties:
assets:
type: array
items:
$ref: '#/components/schemas/FabricDisclosureAssetRef'
required:
- assets
FabricDisclosurePreviewResponse:
type: object
properties:
chainVisibility:
const: visible_to_downstream_chain
datums:
type: array
items:
$ref: '#/components/schemas/FabricDisclosureAssetRef'
required:
- chainVisibility
- datums
FabricDisclosureChangeRequest:
type: object
properties:
assets:
type: array
items:
$ref: '#/components/schemas/FabricDisclosureAssetRef'
reason:
type: string
required:
- assets
- reason
FabricRevisionMutationResponse:
type: object
properties:
notified:
type: number
revision:
type: object
required:
- notified
- revision
FabricCursorPreviewRequest:
type: object
properties:
eventCursorOccurredAt:
type: string
required:
- eventCursorOccurredAt
FabricCursorPreviewResponse:
type: object
properties:
currentCursor:
anyOf:
- type: string
- type: 'null'
newlyVisible:
type: array
items:
$ref: '#/components/schemas/FabricDisclosedEvent'
required:
- currentCursor
- newlyVisible
FabricCursorAdvanceRequest:
type: object
properties:
eventCursorOccurredAt:
type: string
reason:
type: string
required:
- eventCursorOccurredAt
- reason
FabricDisclosurePushPreviewRequest:
type: object
properties:
assets:
type: array
items:
$ref: '#/components/schemas/FabricDisclosureAssetRef'
eventCursorOccurredAt:
type: string
excludeActionFilter:
type: string
required:
- assets
- eventCursorOccurredAt
FabricDisclosurePushPreviewAsset:
type: object
properties:
assetId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
disposition:
anyOf:
- const: new
- const: noop
- const: refresh
- type: 'null'
ineligibleReason:
anyOf:
- const: private_or_missing
- const: redacted
- const: removed
- type: 'null'
kind:
enum:
- field
- resource
- tag
- thread
label:
anyOf:
- type: string
- type: 'null'
status:
enum:
- eligible
- ineligible
required:
- assetId
- disposition
- ineligibleReason
- kind
- label
- status
FabricDisclosurePushPreviewEvent:
type: object
properties:
action:
type: string
maxLength: 64
comment:
anyOf:
- type: string
- type: 'null'
created:
type: string
declaredActor:
anyOf:
- type: object
properties:
id:
type: string
maxLength: 128
minLength: 1
displayName:
type: string
maxLength: 128
role:
type: string
maxLength: 64
system:
type: string
maxLength: 64
required:
- id
- type: 'null'
eventId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
geolocation:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
ipAddress:
anyOf:
- type: string
- type: 'null'
namespace:
anyOf:
- type: string
- type: 'null'
newlyVisible:
type: boolean
occurred:
type: string
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
operationName:
anyOf:
- type: string
- type: 'null'
payload:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
payload_version:
type: string
maxLength: 16
redacted:
type: boolean
topic:
anyOf:
- type: string
- type: 'null'
transactionId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
userAgent:
anyOf:
- type: string
- type: 'null'
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userOrgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
to_bundles:
type: array
items:
type: object
properties:
bundleId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
childOfId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
kind:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
hasChildren:
type: boolean
idPath:
type: array
items:
type: string
isSharedOut:
type: boolean
path:
type: array
items:
type: string
permissions:
type: object
properties:
can_edit:
type: boolean
default: false
can_publish:
type: boolean
default: false
can_share:
type: boolean
default: false
can_transfer:
type: boolean
default: false
can_view:
type: boolean
default: false
threadCount:
type: number
required:
- bundleId
- childOfId
- createdAt
- description
- kind
- name
- ownerId
- updatedAt
to_collections:
type: array
items:
type: object
properties:
collectionId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
required:
- collectionId
- createdAt
- description
- kind
- name
- ownerId
- updatedAt
to_fabric_operations:
type: array
items:
type: object
properties:
abandonedAt:
anyOf:
- type: string
- type: 'null'
completedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
description:
anyOf:
- type: string
- type: 'null'
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
kind:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
primaryThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
respondentId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
sourceTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
startedAt:
anyOf:
- type: string
- type: 'null'
status:
type: string
targetTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
stateReasons:
anyOf:
- type: array
items:
$ref: '#/components/schemas/FabricStateChangeReason'
- type: 'null'
required:
- abandonedAt
- completedAt
- createdAt
- createdById
- description
- id
- kind
- metadata
- name
- primaryThreadId
- respondentId
- sourceTeamId
- startedAt
- status
- targetTeamId
- updatedAt
to_fields:
type: array
items:
anyOf:
- $ref: '#/components/schemas/ThreadFieldResource'
- $ref: '#/components/schemas/ThreadFieldBoolean'
- $ref: '#/components/schemas/ThreadFieldDate'
- $ref: '#/components/schemas/ThreadFieldDateRange'
- $ref: '#/components/schemas/ThreadFieldDatetime'
- $ref: '#/components/schemas/ThreadFieldDuration'
- $ref: '#/components/schemas/ThreadFieldEmail'
- $ref: '#/components/schemas/ThreadFieldLongText'
- $ref: '#/components/schemas/ThreadFieldNumber'
- $ref: '#/components/schemas/ThreadFieldJson'
- $ref: '#/components/schemas/ThreadFieldPhone'
- $ref: '#/components/schemas/ThreadFieldSelect'
- $ref: '#/components/schemas/ThreadFieldSelectMany'
- $ref: '#/components/schemas/ThreadFieldTags'
- $ref: '#/components/schemas/ThreadFieldText'
- $ref: '#/components/schemas/ThreadFieldThread'
- $ref: '#/components/schemas/ThreadFieldTime'
- $ref: '#/components/schemas/ThreadFieldUrl'
to_orgs:
type: array
items:
type: object
properties:
createdAt:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
website:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- logo
- name
- orgId
- slug
- updatedAt
- website
to_relationships:
type: array
items:
type: object
properties:
archived:
type: boolean
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
forwardLabel:
type: string
inverseLabel:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
relId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
type: string
updatedAt:
type: string
required:
- archived
- createdAt
- description
- forwardLabel
- inverseLabel
- metadata
- name
- ownerId
- relId
- slug
- updatedAt
to_resources:
type: array
items:
$ref: '#/components/schemas/Resource'
to_tags:
type: array
items:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagType:
type: string
threadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
value:
type: string
indexing:
anyOf:
- const: default
- const: none
- type: 'null'
isBound:
anyOf:
- type: boolean
- type: 'null'
required:
- archivedAt
- createdAt
- description
- isPrivate
- metadata
- name
- ownerId
- tagId
- tagType
- threadId
- transferId
- transferredAt
- updatedAt
- value
to_teams:
type: array
items:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
to_thread_templates:
type: array
items:
$ref: '#/components/schemas/ThreadTemplate'
to_threads:
type: array
items:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
userKind:
enum:
- human
- service
userOrg:
type: object
properties:
createdAt:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
website:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- logo
- name
- orgId
- slug
- updatedAt
- website
userProfile:
$ref: '#/components/schemas/Principal'
userTeam:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
required:
- action
- comment
- created
- declaredActor
- eventId
- geolocation
- ipAddress
- namespace
- newlyVisible
- occurred
- operationId
- operationName
- payload
- payload_version
- redacted
- topic
- transactionId
- userAgent
- userId
- userOrgId
- userTeamId
FabricDisclosurePushPreviewGroup:
type: object
properties:
eventCount:
type: number
events:
type: array
items:
$ref: '#/components/schemas/FabricDisclosurePushPreviewEvent'
id:
type: string
kind:
enum:
- fabric_operation
- runner_operation
newlyVisible:
type: boolean
occurred:
type: string
title:
anyOf:
- type: string
- type: 'null'
required:
- eventCount
- events
- id
- kind
- newlyVisible
- occurred
FabricDisclosurePushPreviewResponse:
type: object
properties:
assets:
type: array
items:
$ref: '#/components/schemas/FabricDisclosurePushPreviewAsset'
chainVisibility:
const: visible_to_downstream_chain
currentCursor:
anyOf:
- type: string
- type: 'null'
cursorAdvances:
type: boolean
eventCursorOccurredAt:
type: string
visibleEventGroups:
type: array
items:
$ref: '#/components/schemas/FabricDisclosurePushPreviewGroup'
required:
- assets
- chainVisibility
- currentCursor
- cursorAdvances
- eventCursorOccurredAt
- visibleEventGroups
FabricDisclosurePushRequest:
type: object
properties:
assets:
type: array
items:
$ref: '#/components/schemas/FabricDisclosureAssetRef'
eventCursorOccurredAt:
type: string
reason:
type: string
minLength: 1
required:
- assets
- eventCursorOccurredAt
- reason
FabricDisclosurePushResponse:
type: object
properties:
cursorAdvanced:
type: boolean
eventCursorOccurredAt:
type: string
pushedAssetCount:
type: number
revision:
type: object
required:
- cursorAdvanced
- eventCursorOccurredAt
- pushedAssetCount
- revision
FabricNotificationEntry:
type: object
properties:
createdAt:
type: string
datumId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
datumKind:
type: string
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
linkId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
resolvedAt:
anyOf:
- type: string
- type: 'null'
revisionId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
sourceName:
type: string
status:
type: string
targetThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
targetThreadName:
anyOf:
- type: string
- type: 'null'
upstreamThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- createdAt
- datumId
- datumKind
- id
- linkId
- resolvedAt
- revisionId
- sourceName
- status
- targetThreadId
- targetThreadName
- upstreamThreadId
FabricNotificationsResponse:
type: object
properties:
notifications:
type: array
items:
$ref: '#/components/schemas/FabricNotificationEntry'
required:
- notifications
DismissFabricNotificationsRequest:
type: object
properties:
targetThreadIds:
type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- targetThreadIds
DismissFabricNotificationsResponse:
type: object
properties:
dismissed:
type: number
required:
- dismissed
FabricPositionResolution:
type: object
properties:
attachRequired:
type: boolean
resolvedName:
anyOf:
- type: string
- type: 'null'
resolvedThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
upstreamThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- attachRequired
- resolvedName
- resolvedThreadId
- upstreamThreadId
FabricDecisionPreviewResponse:
type: object
properties:
changes:
type: array
items:
type: object
properties:
after: {}
before: {}
path:
type: string
required:
- after
- before
- path
conflictCodes:
type: array
items:
type: string
conflicts:
type: array
items:
type: string
datum:
type: object
properties:
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
kind:
type: string
required:
- id
- kind
linkId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
notificationId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
revisionId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
snapshot:
anyOf:
- type: object
- type: 'null'
target:
anyOf:
- type: object
properties:
assetId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- assetId
- threadId
- type: 'null'
upstreamThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
adoption:
type: boolean
position:
anyOf:
- $ref: '#/components/schemas/FabricPositionResolution'
- type: 'null'
required:
- changes
- conflictCodes
- conflicts
- datum
- linkId
- notificationId
- revisionId
- snapshot
- target
- upstreamThreadId
AcceptFabricNotificationRequest:
type: object
properties:
reason:
anyOf:
- type: string
- type: 'null'
FabricDecisionResponse:
type: object
properties:
decision:
type: object
notification:
anyOf:
- type: object
- type: 'null'
preview:
$ref: '#/components/schemas/FabricDecisionPreviewResponse'
outgoingDisclosureRedactionRequired:
type: boolean
required:
- decision
- notification
- preview
RejectFabricNotificationRequest:
type: object
properties:
reason:
anyOf:
- type: string
- type: 'null'
FabricSyncRow:
type: object
properties:
actionable:
type: boolean
changes:
type: array
items:
type: object
properties:
after: {}
before: {}
path:
type: string
required:
- after
- before
- path
conflictCodes:
type: array
items:
type: string
conflicts:
type: array
items:
type: string
datum:
type: object
properties:
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
kind:
type: string
required:
- id
- kind
decided:
anyOf:
- type: object
properties:
atCurrentRevision:
type: boolean
createdAt:
type: string
decision:
type: string
reason:
type: string
revisionId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
required:
- atCurrentRevision
- createdAt
- decision
- reason
- revisionId
- type: 'null'
disclosedAt:
anyOf:
- type: string
- type: 'null'
disclosureStatus:
type: string
linkId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
notificationId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
revisionId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
snapshot:
anyOf:
- type: object
- type: 'null'
status:
enum:
- accepted-locally-changed
- adoptable-new
- cert-review
- conflict
- declined
- hidden
- in-sync
- update-available
- withdrawn
target:
anyOf:
- type: object
properties:
assetId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- assetId
- threadId
- type: 'null'
upstreamThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
adoption:
type: boolean
position:
anyOf:
- $ref: '#/components/schemas/FabricPositionResolution'
- type: 'null'
required:
- actionable
- changes
- conflictCodes
- conflicts
- datum
- decided
- disclosedAt
- disclosureStatus
- linkId
- notificationId
- revisionId
- snapshot
- status
- target
- upstreamThreadId
FabricLinkSyncResponse:
type: object
properties:
consumerLinkId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
rows:
type: array
items:
$ref: '#/components/schemas/FabricSyncRow'
sourceLinkId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
sourceName:
type: string
upstreamThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- consumerLinkId
- rows
- sourceLinkId
- sourceName
- upstreamThreadId
AdoptDisclosedAssetRequest:
type: object
properties:
datumId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
datumKind:
enum:
- certificate
- field
- resource
- tag
- thread
reason:
anyOf:
- type: string
- type: 'null'
required:
- datumId
- datumKind
DeclineDisclosedAssetRequest:
type: object
properties:
datumId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
datumKind:
enum:
- certificate
- field
- resource
- tag
- thread
reason:
anyOf:
- type: string
- type: 'null'
required:
- datumId
- datumKind
HideDisclosedAssetLocalCopyRequest:
type: object
properties:
datumId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
datumKind:
enum:
- certificate
- field
- resource
- tag
- thread
reason:
anyOf:
- type: string
- type: 'null'
required:
- datumId
- datumKind
AdoptDisclosedAssetsRequest:
type: object
properties:
datums:
type: array
items:
type: object
properties:
datumId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
datumKind:
enum:
- certificate
- field
- resource
- tag
- thread
required:
- datumId
- datumKind
reason:
anyOf:
- type: string
- type: 'null'
required:
- datums
FabricAdoptBatchResponse:
type: object
properties:
adopted:
type: array
items:
$ref: '#/components/schemas/FabricDecisionResponse'
required:
- adopted
CertificateFormCreateRequest:
type: object
properties:
name:
type: string
bindings:
type: array
items:
anyOf:
- type: object
properties:
kind:
enum:
- boolean
- date
- image
- number
- text
primaryName:
type: string
required:
type: boolean
source:
const: field
zoneId:
type: string
aliases:
type: array
items:
type: string
dateFormat:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
systemAliases:
type: array
items:
enum:
- certificate.issueDate
- issuer.familyName
- issuer.firstName
- issuer.fullName
- issuer.teamName
- thread.description
- thread.identifiers
- thread.name
- thread.thumbnail
- thread.uuid
required:
- kind
- primaryName
- required
- source
- zoneId
- type: object
properties:
required:
type: boolean
source:
const: static
staticKind:
const: text
text:
type: string
zoneId:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
required:
- required
- source
- staticKind
- text
- zoneId
- type: object
properties:
required:
type: boolean
source:
const: system
systemKey:
enum:
- certificate.issueDate
- issuer.familyName
- issuer.firstName
- issuer.fullName
- issuer.teamName
- thread.description
- thread.identifiers
- thread.name
- thread.thumbnail
- thread.uuid
zoneId:
type: string
dateFormat:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
required:
- required
- source
- systemKey
- zoneId
sourceResourceId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
status:
enum:
- active
- archived
template:
type: object
properties:
basePdf:
type: string
schemas:
type: array
items:
type: array
items:
type: object
properties:
height:
type: number
name:
type: string
position:
type: object
properties:
x:
type: number
y:
type: number
required:
- x
- y
type:
enum:
- checkbox
- code128
- code39
- image
- pdf417
- qrcode
- text
width:
type: number
alignment:
type: string
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
includetext:
type: boolean
opacity:
type: number
rotate:
type: number
required:
- height
- name
- position
- type
- width
required:
- basePdf
- schemas
required:
- name
CertificateFormResponse:
type: object
properties:
bindings:
type: array
items:
anyOf:
- type: object
properties:
kind:
enum:
- boolean
- date
- image
- number
- text
primaryName:
type: string
required:
type: boolean
source:
const: field
zoneId:
type: string
aliases:
type: array
items:
type: string
dateFormat:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
systemAliases:
type: array
items:
enum:
- certificate.issueDate
- issuer.familyName
- issuer.firstName
- issuer.fullName
- issuer.teamName
- thread.description
- thread.identifiers
- thread.name
- thread.thumbnail
- thread.uuid
required:
- kind
- primaryName
- required
- source
- zoneId
- type: object
properties:
required:
type: boolean
source:
const: static
staticKind:
const: text
text:
type: string
zoneId:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
required:
- required
- source
- staticKind
- text
- zoneId
- type: object
properties:
required:
type: boolean
source:
const: system
systemKey:
enum:
- certificate.issueDate
- issuer.familyName
- issuer.firstName
- issuer.fullName
- issuer.teamName
- thread.description
- thread.identifiers
- thread.name
- thread.thumbnail
- thread.uuid
zoneId:
type: string
dateFormat:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
required:
- required
- source
- systemKey
- zoneId
createdAt:
type: string
createdById:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
formId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
name:
type: string
ownerTeamId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
schemaVersion:
type: number
sourceResourceId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
status:
enum:
- active
- archived
template:
anyOf:
- type: object
properties:
basePdf:
type: string
schemas:
type: array
items:
type: array
items:
type: object
properties:
height:
type: number
name:
type: string
position:
type: object
properties:
x:
type: number
y:
type: number
required:
- x
- y
type:
enum:
- checkbox
- code128
- code39
- image
- pdf417
- qrcode
- text
width:
type: number
alignment:
type: string
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
includetext:
type: boolean
opacity:
type: number
rotate:
type: number
required:
- height
- name
- position
- type
- width
required:
- basePdf
- schemas
- type: 'null'
updatedAt:
type: string
required:
- bindings
- createdAt
- createdById
- formId
- name
- ownerTeamId
- schemaVersion
- sourceResourceId
- status
- template
- updatedAt
CertificateFormUpdateRequest:
type: object
properties:
bindings:
type: array
items:
anyOf:
- type: object
properties:
kind:
enum:
- boolean
- date
- image
- number
- text
primaryName:
type: string
required:
type: boolean
source:
const: field
zoneId:
type: string
aliases:
type: array
items:
type: string
dateFormat:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
systemAliases:
type: array
items:
enum:
- certificate.issueDate
- issuer.familyName
- issuer.firstName
- issuer.fullName
- issuer.teamName
- thread.description
- thread.identifiers
- thread.name
- thread.thumbnail
- thread.uuid
required:
- kind
- primaryName
- required
- source
- zoneId
- type: object
properties:
required:
type: boolean
source:
const: static
staticKind:
const: text
text:
type: string
zoneId:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
required:
- required
- source
- staticKind
- text
- zoneId
- type: object
properties:
required:
type: boolean
source:
const: system
systemKey:
enum:
- certificate.issueDate
- issuer.familyName
- issuer.firstName
- issuer.fullName
- issuer.teamName
- thread.description
- thread.identifiers
- thread.name
- thread.thumbnail
- thread.uuid
zoneId:
type: string
dateFormat:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
required:
- required
- source
- systemKey
- zoneId
name:
type: string
sourceResourceId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
status:
enum:
- active
- archived
template:
anyOf:
- type: object
properties:
basePdf:
type: string
schemas:
type: array
items:
type: array
items:
type: object
properties:
height:
type: number
name:
type: string
position:
type: object
properties:
x:
type: number
y:
type: number
required:
- x
- y
type:
enum:
- checkbox
- code128
- code39
- image
- pdf417
- qrcode
- text
width:
type: number
alignment:
type: string
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
includetext:
type: boolean
opacity:
type: number
rotate:
type: number
required:
- height
- name
- position
- type
- width
required:
- basePdf
- schemas
- type: 'null'
CertificatePreflightRequest:
type: object
properties:
formId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- formId
- threadId
CertificatePreflightResult:
type: object
properties:
bindings:
type: array
items:
type: object
properties:
label:
type: string
matchedFieldName:
anyOf:
- type: string
- type: 'null'
message:
anyOf:
- type: string
- type: 'null'
nonExact:
type: boolean
required:
type: boolean
source:
enum:
- field
- static
- system
status:
enum:
- ambiguous
- empty
- missing
- resolved
- type_mismatch
- unencodable
zoneId:
type: string
required:
- label
- matchedFieldName
- message
- nonExact
- required
- source
- status
- zoneId
compatible:
type: boolean
formId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
requiredResolved:
type: number
requiredTotal:
type: number
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- bindings
- compatible
- formId
- requiredResolved
- requiredTotal
- threadId
CertificatePreflightBatchRequest:
type: object
properties:
formId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
threadIds:
type: array
maxItems: 100
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- formId
- threadIds
CertificatePreviewFormRequest:
type: object
properties:
bindings:
type: array
items:
anyOf:
- type: object
properties:
kind:
enum:
- boolean
- date
- image
- number
- text
primaryName:
type: string
required:
type: boolean
source:
const: field
zoneId:
type: string
aliases:
type: array
items:
type: string
dateFormat:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
systemAliases:
type: array
items:
enum:
- certificate.issueDate
- issuer.familyName
- issuer.firstName
- issuer.fullName
- issuer.teamName
- thread.description
- thread.identifiers
- thread.name
- thread.thumbnail
- thread.uuid
required:
- kind
- primaryName
- required
- source
- zoneId
- type: object
properties:
required:
type: boolean
source:
const: static
staticKind:
const: text
text:
type: string
zoneId:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
required:
- required
- source
- staticKind
- text
- zoneId
- type: object
properties:
required:
type: boolean
source:
const: system
systemKey:
enum:
- certificate.issueDate
- issuer.familyName
- issuer.firstName
- issuer.fullName
- issuer.teamName
- thread.description
- thread.identifiers
- thread.name
- thread.thumbnail
- thread.uuid
zoneId:
type: string
dateFormat:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
required:
- required
- source
- systemKey
- zoneId
template:
type: object
properties:
basePdf:
type: string
schemas:
type: array
items:
type: array
items:
type: object
properties:
height:
type: number
name:
type: string
position:
type: object
properties:
x:
type: number
y:
type: number
required:
- x
- y
type:
enum:
- checkbox
- code128
- code39
- image
- pdf417
- qrcode
- text
width:
type: number
alignment:
type: string
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
includetext:
type: boolean
opacity:
type: number
rotate:
type: number
required:
- height
- name
- position
- type
- width
required:
- basePdf
- schemas
teamName:
type: string
required:
- bindings
- template
CertificatePreviewFormResponse:
type: object
properties:
pdfBase64:
type: string
required:
- pdfBase64
CertificatePreviewFormForThreadRequest:
type: object
properties:
bindings:
type: array
items:
anyOf:
- type: object
properties:
kind:
enum:
- boolean
- date
- image
- number
- text
primaryName:
type: string
required:
type: boolean
source:
const: field
zoneId:
type: string
aliases:
type: array
items:
type: string
dateFormat:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
systemAliases:
type: array
items:
enum:
- certificate.issueDate
- issuer.familyName
- issuer.firstName
- issuer.fullName
- issuer.teamName
- thread.description
- thread.identifiers
- thread.name
- thread.thumbnail
- thread.uuid
required:
- kind
- primaryName
- required
- source
- zoneId
- type: object
properties:
required:
type: boolean
source:
const: static
staticKind:
const: text
text:
type: string
zoneId:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
required:
- required
- source
- staticKind
- text
- zoneId
- type: object
properties:
required:
type: boolean
source:
const: system
systemKey:
enum:
- certificate.issueDate
- issuer.familyName
- issuer.firstName
- issuer.fullName
- issuer.teamName
- thread.description
- thread.identifiers
- thread.name
- thread.thumbnail
- thread.uuid
zoneId:
type: string
dateFormat:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
required:
- required
- source
- systemKey
- zoneId
template:
type: object
properties:
basePdf:
type: string
schemas:
type: array
items:
type: array
items:
type: object
properties:
height:
type: number
name:
type: string
position:
type: object
properties:
x:
type: number
y:
type: number
required:
- x
- y
type:
enum:
- checkbox
- code128
- code39
- image
- pdf417
- qrcode
- text
width:
type: number
alignment:
type: string
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
includetext:
type: boolean
opacity:
type: number
rotate:
type: number
required:
- height
- name
- position
- type
- width
required:
- basePdf
- schemas
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
teamName:
type: string
required:
- bindings
- template
- threadId
CertificatePreviewPreflight:
type: object
properties:
bindings:
type: array
items:
type: object
properties:
label:
type: string
matchedFieldName:
anyOf:
- type: string
- type: 'null'
message:
anyOf:
- type: string
- type: 'null'
nonExact:
type: boolean
required:
type: boolean
source:
enum:
- field
- static
- system
status:
enum:
- ambiguous
- empty
- missing
- resolved
- type_mismatch
- unencodable
zoneId:
type: string
required:
- label
- matchedFieldName
- message
- nonExact
- required
- source
- status
- zoneId
compatible:
type: boolean
requiredResolved:
type: number
requiredTotal:
type: number
required:
- bindings
- compatible
- requiredResolved
- requiredTotal
CertificatePreviewFormForThreadResponse:
type: object
properties:
pdfBase64:
type: string
preflight:
$ref: '#/components/schemas/CertificatePreviewPreflight'
required:
- pdfBase64
- preflight
CertificateResolveFormValuesRequest:
type: object
properties:
bindings:
type: array
items:
anyOf:
- type: object
properties:
kind:
enum:
- boolean
- date
- image
- number
- text
primaryName:
type: string
required:
type: boolean
source:
const: field
zoneId:
type: string
aliases:
type: array
items:
type: string
dateFormat:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
systemAliases:
type: array
items:
enum:
- certificate.issueDate
- issuer.familyName
- issuer.firstName
- issuer.fullName
- issuer.teamName
- thread.description
- thread.identifiers
- thread.name
- thread.thumbnail
- thread.uuid
required:
- kind
- primaryName
- required
- source
- zoneId
- type: object
properties:
required:
type: boolean
source:
const: static
staticKind:
const: text
text:
type: string
zoneId:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
required:
- required
- source
- staticKind
- text
- zoneId
- type: object
properties:
required:
type: boolean
source:
const: system
systemKey:
enum:
- certificate.issueDate
- issuer.familyName
- issuer.firstName
- issuer.fullName
- issuer.teamName
- thread.description
- thread.identifiers
- thread.name
- thread.thumbnail
- thread.uuid
zoneId:
type: string
dateFormat:
type: string
format:
type: object
properties:
align:
enum:
- center
- left
- right
backgroundColor:
type: string
barColor:
type: string
fontColor:
type: string
fontName:
type: string
fontSize:
type: number
opacity:
type: number
rotate:
type: number
showText:
type: boolean
renderAs:
enum:
- code128
- code39
- pdf417
- qrcode
- text
required:
- required
- source
- systemKey
- zoneId
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
teamName:
type: string
required:
- bindings
- threadId
CertificateResolvedZone:
type: object
properties:
imageDataUrl:
anyOf:
- type: string
- type: 'null'
label:
type: string
required:
type: boolean
status:
enum:
- ambiguous
- empty
- missing
- resolved
- type_mismatch
- unencodable
text:
anyOf:
- type: string
- type: 'null'
zoneId:
type: string
required:
- imageDataUrl
- label
- required
- status
- text
- zoneId
CertificateResolveFormValuesResponse:
type: object
properties:
zones:
type: array
items:
$ref: '#/components/schemas/CertificateResolvedZone'
required:
- zones
CertificateGenerateRequest:
type: object
properties:
formId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
name:
type: string
required:
- formId
- threadId
CertificateResponse:
type: object
properties:
certificateId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
checksum:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
downloadUrl:
anyOf:
- type: string
- type: 'null'
filename:
anyOf:
- type: string
- type: 'null'
formId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
formName:
type: string
name:
anyOf:
- type: string
- type: 'null'
resId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
status:
enum:
- issued
- voided
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
voidInternalNote:
anyOf:
- type: string
- type: 'null'
voidReasonCode:
anyOf:
- type: string
- type: 'null'
voidedAt:
anyOf:
- type: string
- type: 'null'
voidedById:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
required:
- certificateId
- checksum
- createdAt
- downloadUrl
- filename
- formId
- formName
- name
- resId
- status
- threadId
- voidInternalNote
- voidReasonCode
- voidedAt
- voidedById
CertificateVoidRequest:
type: object
properties:
certificateId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
reasonCode:
enum:
- duplicate_certificate
- incorrect_thread_data
- issued_in_error
- other
- wrong_form
internalNote:
anyOf:
- type: string
- type: 'null'
required:
- certificateId
- reasonCode
tags:
- name: System
description: Health and status checks
- name: Users
description: Manage user accounts and profiles
- name: Threads
description: Create and manage threads
- name: Auth
description: Authentication and authorization
- name: Bundles
description: Unordered teams of threads
- name: Tags
description: Manage identifiers and their metadata
- name: Templates
description: Manage thread templates
- name: Events
description: Work with system events
- name: Files
description: Upload and manage files
- name: Certificates
description: Generate, list, and void certificates
- name: Certificate Forms
description: Create and manage certificate form designs
- name: Teams
description: Manage user teams and permissions
- name: Connections
description: Connections (team links) between Teams; they gate sharing and shipments
- name: Org Admin
description: Org-admin management of teams and memberships
- name: Metrics
description: Organization and team metrics.
- name: Notifications
description: Manage user notifications.
- name: Organizations
description: Manage organizations and their members.
- name: Thread Links
description: Link threads with relations
- name: Thread Relations
description: The ways threads can be linked
- name: Transfers
description: Transfer ownership of threads across organizations
x-tagTeams:
- name: Core
tags:
- System
- Users
- Teams
- Connections
- Org Admin
- Organizations
- Auth
- name: Content
tags:
- Threads
- Tags
- Templates
- Files
- Certificates
- Certificate Forms
- Sharing
- Thread Links
- Thread Relations
- Notifications
- Bundles
- Events
- Metrics
- Transfers
paths:
/livez:
get:
operationId: get_liveness
summary: Liveness check
tags:
- System
responses:
'200':
description: Service is healthy
content:
application/json:
schema:
$ref: '#/components/schemas/HealthResponse'
/readyz:
get:
operationId: get_readiness
summary: Readiness check
tags:
- System
responses:
'200':
description: Service is healthy
content:
application/json:
schema:
$ref: '#/components/schemas/HealthResponse'
'503':
description: Service is not ready
content:
application/json:
schema:
$ref: '#/components/schemas/HealthErrorResponse'
/healthz:
get:
operationId: get_health
summary: Health check
tags:
- System
responses:
'200':
description: Service is healthy
content:
application/json:
schema:
$ref: '#/components/schemas/HealthResponse'
'503':
description: Service is not ready
content:
application/json:
schema:
$ref: '#/components/schemas/HealthErrorResponse'
/api/auth/token:
get:
operationId: AuthToken
summary: Get auth token
description: Exchange an API key (x-api-key header) for a short-lived bearer token. The response includes expiresIn
(seconds) and expiresAt (ISO 8601) so clients can refresh proactively — re-exchange the key before expiry.
tags:
- Auth
responses: {}
/api/auth/jwks:
get:
operationId: AuthJWKS
summary: Get JWKS
description: Get JSON Web Key Set for verifying tokens.
tags:
- Auth
responses: {}
/api/v1/me/feature-flags:
get:
operationId: get_me_feature_flags
summary: Current feature flags
description: Returns the server-evaluated PostHog feature flag snapshot for the current request context.
tags:
- Auth
responses:
'200':
description: Current feature flags
content:
application/json:
schema:
$ref: '#/components/schemas/MeFeatureFlagsResponse'
'401':
description: Missing/invalid bearer token
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/me:
get:
operationId: get_me
summary: Current user
description: Returns the current user context derived from the validated AuthD access token (DICE4 parity).
tags:
- Auth
responses:
'200':
description: Current user context
content:
application/json:
schema:
$ref: '#/components/schemas/MeResponse'
'401':
description: Missing/invalid bearer token
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/assemblies:
get:
operationId: assembly.list
parameters:
- in: query
name: includeArchived
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
- in: query
name: q
schema:
type: string
summary: List the assembly Threads the caller can view
tags:
- Threads
responses:
'200':
description: Assemblies
content:
application/json:
schema:
$ref: '#/components/schemas/AssemblyListResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/assemblies/{assembly_id}/parts:
get:
operationId: assembly.children
parameters:
- in: path
name: assembly_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: List the direct Parts of an assembly Thread
tags:
- Threads
responses:
'200':
description: Direct Parts
content:
application/json:
schema:
$ref: '#/components/schemas/AssemblyChildrenResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
post:
operationId: assembly.attach_part
parameters:
- in: path
name: assembly_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AttachPartRequest'
summary: Attach a Part to an assembly Thread
tags:
- Threads
responses:
'200':
description: Attached
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
delete:
operationId: assembly.detach_part
parameters:
- in: path
name: assembly_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/DetachPartRequest'
summary: Detach a Part from an assembly Thread
tags:
- Threads
responses:
'200':
description: Detached
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/assemblies/{assembly_id}/parts/protection:
patch:
operationId: assembly.set_part_protection
parameters:
- in: path
name: assembly_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SetPartProtectionRequest'
summary: Set Part protection relation
tags:
- Threads
responses:
'200':
description: Updated
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/assemblies/{assembly_id}/thread-fields:
put:
operationId: assembly.set_thread_field
parameters:
- in: path
name: assembly_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SetThreadFieldRequest'
summary: Set or clear a thread-valued assembly field
tags:
- Threads
responses:
'200':
description: Updated
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/assemblies/{assembly_id}/kind:
patch:
operationId: assembly.convert
parameters:
- in: path
name: assembly_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ConvertThreadKindRequest'
summary: Convert a Thread between unit and assembly kind
tags:
- Threads
responses:
'200':
description: Converted
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/assemblies/{assembly_id}/rolled-up-parts:
get:
operationId: assembly.rolled_up_parts
parameters:
- in: path
name: assembly_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: List transitive Parts for an assembly Thread
tags:
- Threads
responses:
'200':
description: Rolled-up Parts
content:
application/json:
schema:
$ref: '#/components/schemas/RolledUpPartsResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/bundles:
get:
operationId: bundles.list
summary: List bundles with cursor pagination
description: Returns bundles plus opaque `next` and `prev` values. Cursors are stable across shared timestamps because
they include the ordered column and bundle ID.
tags:
- Bundles
responses:
'200':
description: List of bundles matching the query
content:
application/json:
schema:
$ref: '#/components/schemas/BundleListResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- in: query
name: createdBy
schema:
type: string
- in: query
name: cursor
schema:
type: string
- in: query
name: includeArchived
schema:
enum:
- 'false'
- 'true'
- in: query
name: kind
schema:
enum:
- category
- folder
- in: query
name: order
schema:
enum:
- asc
- desc
- in: query
name: orderCol
schema:
enum:
- createdAt
- updatedAt
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: q
schema:
type: string
post:
operationId: bundles.create
summary: Create a thread bundle
tags:
- Bundles
responses:
'201':
description: Created bundle
content:
application/json:
schema:
$ref: '#/components/schemas/BundleCreateResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/BundleCreateRequest'
/api/v1/bundles/children:
get:
operationId: bundles.get_children
summary: List visible child bundles
description: Returns the immediate visible child bundles for a parent bundle or the root level when `parentId` is omitted.
tags:
- Bundles
responses:
'200':
description: List of visible child bundles
content:
application/json:
schema:
$ref: '#/components/schemas/BundleChildrenResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- in: query
name: depth
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: includeArchived
schema:
enum:
- 'false'
- 'true'
- in: query
name: kind
schema:
enum:
- category
- folder
- in: query
name: parentId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
description: a UUID
/api/v1/bundles/count:
get:
operationId: bundles.count
summary: Count bundles
description: Returns the exact total for the same visibility and filter set used by `bundles.list`, excluding pagination
and cursor params. Use this to compute totals or total pages when the list endpoint is using cursor pagination.
tags:
- Bundles
responses:
'200':
description: Total bundles matching the query
content:
application/json:
schema:
$ref: '#/components/schemas/BundleCountResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- in: query
name: createdBy
schema:
type: string
- in: query
name: includeArchived
schema:
enum:
- 'false'
- 'true'
- in: query
name: kind
schema:
enum:
- category
- folder
- in: query
name: q
schema:
type: string
/api/v1/bundles/{bundle_id}:
get:
operationId: bundles.get
summary: Get bundle
tags:
- Bundles
responses:
'200':
description: The bundle and its children (if `recurse`=true)
content:
application/json:
schema:
$ref: '#/components/schemas/BundleResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Folder not found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- in: query
name: recurse
schema:
enum:
- 'false'
- 'true'
- schema:
type: string
in: path
name: bundle_id
required: true
patch:
operationId: bundles.update
parameters:
- in: path
name: bundle_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/BundleUpdateRequest'
summary: Update a bundle
tags:
- Bundles
responses:
'200':
description: Updated bundle
content:
application/json:
schema:
$ref: '#/components/schemas/BundleUpdateResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Folder not found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
delete:
operationId: bundles.remove
parameters:
- in: path
name: bundle_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Delete a bundle
tags:
- Bundles
responses:
'200':
description: Deleted
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Folder not found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/bundles/parent:
patch:
operationId: bundles.set_parent
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/BundleSetParentRequest'
summary: Set bundle parent
description: 'Move one or more bundles under a parent bundle. Use `parentId: null` to move bundles to the root.'
tags:
- Bundles
responses:
'200':
description: Updated bundles
content:
application/json:
schema:
$ref: '#/components/schemas/BundleSetParentResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Parent bundle not found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/bundles/{bundle_id}/add:
post:
operationId: bundles.add
parameters:
- in: path
name: bundle_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- threadId
summary: Add a thread to the bundle
tags:
- Bundles
responses:
'200':
description: True when the thread was newly added; false when it was already in the bundle
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/bundles/{bundle_id}/move:
patch:
operationId: bundles.move_to
parameters:
- in: path
name: bundle_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
threadIds:
type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- threadIds
summary: Move threads to a bundle
description: Move threads to a bundle - this is *not* additive, it removes any existing bundle memberships of the same
bundle kind (e.g. folder) before adding the threads to the new bundle.
tags:
- Bundles
responses:
'200':
description: Moved
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/bundles/{bundle_id}/threads/{thread_id}:
delete:
operationId: bundles.remove_thread
parameters:
- in: path
name: bundle_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Remove a thread from a category bundle
tags:
- Bundles
responses:
'200':
description: Removed
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/bundles/{bundle_id}/children:
patch:
operationId: bundles.set_children
parameters:
- in: path
name: bundle_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
childrenIds:
type: array
description: IDs of child bundles to set for the bundle. This will replace any existing children of the
bundle.
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- childrenIds
summary: Set bundle children
tags:
- Bundles
responses:
'200':
description: Updated
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Folder not found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/threads:
post:
operationId: threads.create
summary: Create one or more threads
description: Create multiple threads in a single request. Allows for key-value thread objects and automatically build
the necessary thread field data structure for each thread.
tags:
- Threads
responses:
'201':
description: Created threads
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadCreateResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
requestBody:
required: true
content:
application/json:
schema:
anyOf:
- $ref: '#/components/schemas/ThreadCreateManyRawRequest'
- $ref: '#/components/schemas/ThreadCreateSingleRequest'
- $ref: '#/components/schemas/ThreadCreateManyRequest'
get:
operationId: threads.list
summary: List threads with cursor pagination.
tags:
- Threads
responses:
'200':
description: List of threads
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadQueryResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- in: query
name: archivedOnly
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
- in: query
name: bundleId
schema:
anyOf:
- type: string
description: Search within a bundle, or use 'none' for threads without a bundle
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: Search within a bundle, or use 'none' for threads without a bundle
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: Search within a bundle, or use 'none' for threads without a bundle
format: uuid
- const: none
description: Search within a bundle, or use 'none' for threads without a bundle
description: Search within a bundle, or use 'none' for threads without a bundle
- in: query
name: createdBy
schema:
anyOf:
- type: string
description: Filter by creator user ID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: Filter by creator user ID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: Filter by creator user ID
format: uuid
format: uuid
description: Filter by creator user ID
- in: query
name: cursor
schema:
anyOf:
- type: string
- type: 'null'
- in: query
name: excludeTransferred
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
- in: query
name: hasResources
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
- in: query
name: includeArchived
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
- in: query
name: order
schema:
enum:
- asc
- desc
- in: query
name: orderCol
schema:
enum:
- createdAt
- name
- updatedAt
- in: query
name: ownedByTeam
schema:
type: string
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: q
schema:
type: string
description: Search query string. Searches over name and description by default.
- in: query
name: queryCol
schema:
enum:
- description
- name
- in: query
name: tagType
schema:
enum:
- BAR_CODE
- DATA_MATRIX
- DUST
- NFC
- QR
- in: query
name: templateId
schema:
anyOf:
- type: string
description: Filter by thread template
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: Filter by thread template
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: Filter by thread template
format: uuid
format: uuid
description: Filter by thread template
- in: query
name: threadIds
schema:
anyOf:
- type: string
description: Filter to this set of thread IDs (repeatable query param). Non-UUID values are ignored; threads the
caller cannot see are silently omitted.
- type: array
description: Filter to this set of thread IDs (repeatable query param). Non-UUID values are ignored; threads the
caller cannot see are silently omitted.
items:
type: string
description: Filter to this set of thread IDs (repeatable query param). Non-UUID values are ignored; threads the caller
cannot see are silently omitted.
- in: query
name: transferredOnly
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
- in: query
name: withActiveShipment
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
/api/v1/threads/count:
get:
operationId: threads.count
summary: Count threads with optional filters.
description: Returns the exact total for the same filter set used by `threads.list`. Use this to compute totals or total
pages when the list endpoint is using cursor pagination.
tags:
- Threads
responses:
'200':
description: Total threads
content:
application/json:
schema:
type: object
properties:
total:
type: number
required:
- total
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- in: query
name: archivedOnly
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
- in: query
name: bundleId
schema:
anyOf:
- type: string
description: Search within a bundle, or use 'none' for threads without a bundle
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: Search within a bundle, or use 'none' for threads without a bundle
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: Search within a bundle, or use 'none' for threads without a bundle
format: uuid
- const: none
description: Search within a bundle, or use 'none' for threads without a bundle
description: Search within a bundle, or use 'none' for threads without a bundle
- in: query
name: createdBy
schema:
anyOf:
- type: string
description: Filter by creator user ID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: Filter by creator user ID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: Filter by creator user ID
format: uuid
format: uuid
description: Filter by creator user ID
- in: query
name: cursor
schema:
anyOf:
- type: string
- type: 'null'
- in: query
name: excludeTransferred
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
- in: query
name: hasResources
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
- in: query
name: includeArchived
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
- in: query
name: order
schema:
enum:
- asc
- desc
- in: query
name: orderCol
schema:
enum:
- createdAt
- name
- updatedAt
- in: query
name: ownedByTeam
schema:
type: string
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: q
schema:
type: string
description: Search query string. Searches over name and description by default.
- in: query
name: queryCol
schema:
enum:
- description
- name
- in: query
name: tagType
schema:
enum:
- BAR_CODE
- DATA_MATRIX
- DUST
- NFC
- QR
- in: query
name: templateId
schema:
anyOf:
- type: string
description: Filter by thread template
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: Filter by thread template
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: Filter by thread template
format: uuid
format: uuid
description: Filter by thread template
- in: query
name: threadIds
schema:
anyOf:
- type: string
description: Filter to this set of thread IDs (repeatable query param). Non-UUID values are ignored; threads the
caller cannot see are silently omitted.
- type: array
description: Filter to this set of thread IDs (repeatable query param). Non-UUID values are ignored; threads the
caller cannot see are silently omitted.
items:
type: string
description: Filter to this set of thread IDs (repeatable query param). Non-UUID values are ignored; threads the caller
cannot see are silently omitted.
- in: query
name: transferredOnly
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
- in: query
name: withActiveShipment
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
/api/v1/threads/permissions:
post:
operationId: threads.check_permissions
summary: Get user permissions on threads.
description: Returns the permissions a user has on each thread in the current organization-team context.
tags:
- Threads
responses:
'200':
description: Map of thread id to permissions.
content:
application/json:
schema:
type: object
description: Map of thread IDs to the user's permissions for that thread
additionalProperties:
type: object
properties:
can_edit:
type: boolean
default: false
can_publish:
type: boolean
default: false
can_share:
type: boolean
default: false
can_transfer:
type: boolean
default: false
can_view:
type: boolean
default: false
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
threadIds:
type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- threadIds
/api/v1/threads/{thread_id}:
post:
operationId: threads.update
summary: Update thread field data
tags:
- Threads
responses:
'200':
description: Updated thread field data
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadUpdateResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadUpdateRequest'
parameters:
- schema:
type: string
in: path
name: thread_id
required: true
get:
operationId: threads.get
summary: Get thread data.
tags:
- Threads
responses:
'200':
description: Thread data
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadGetResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- in: query
name: maxEvents
schema:
type: number
- schema:
type: string
in: path
name: thread_id
required: true
/api/v1/threads/{thread_id}/data:
post:
operationId: threads.update_data
summary: Update thread field data
tags:
- Threads
responses:
'200':
description: Updated thread field data
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadUpdateDataResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadUpdateDataRequest'
parameters:
- schema:
type: string
in: path
name: thread_id
required: true
/api/v1/threads/{thread_id}/data/archived:
get:
operationId: threads.get_archived_data
summary: List archived thread field data
description: Returns the thread's soft-deleted (archived) data fields so they can be viewed and restored.
tags:
- Threads
responses:
'200':
description: Archived thread field data
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadArchivedDataResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- schema:
type: string
in: path
name: thread_id
required: true
/api/v1/threads/{thread_id}/data/restore:
post:
operationId: threads.restore_data
summary: Restore archived thread field data
description: Un-archives the given fields and returns the thread's authorized active field list.
tags:
- Threads
responses:
'200':
description: Active thread field data after restore
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadUpdateDataResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadRestoreDataRequest'
parameters:
- schema:
type: string
in: path
name: thread_id
required: true
/api/v1/threads/{thread_id}/presence:
post:
operationId: threads.presence
summary: Heartbeat presence and list the current viewers of a thread
tags:
- Threads
responses:
'200':
description: Current thread viewers
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadPresenceResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadPresenceHeartbeatRequest'
parameters:
- schema:
type: string
in: path
name: thread_id
required: true
/api/v1/threads/{thread_id}/access:
get:
operationId: threads.list_access_contexts
summary: List access contexts for threads.
description: This returns what access the user has on the thread, and which teams they belong to that give them that
access.
tags:
- Threads
responses:
'200':
description: List of access contexts
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadAccessContextResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- schema:
type: string
in: path
name: thread_id
required: true
/api/v1/threads/archive:
patch:
operationId: threads.archive
summary: Archive a set of threads.
description: Archive is a soft delete operation that hides threads from the default list and prevents them from being
updated/changed. Archived threads can be unarchived to restore them.
tags:
- Threads
responses:
'200':
description: Thread archived successfully
content:
application/json:
schema:
type: object
properties:
threadIds:
type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- threadIds
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
threadIds:
type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
toggle:
type: boolean
description: When true, will unarchive archived threads and archive active threads. When false, will only
archive active threads
required:
- threadIds
/api/v1/threads/restore:
patch:
operationId: threads.archive_restore
summary: Restore archived threads.
description: Unarchive threads that were previously archived to restore them.
tags:
- Threads
responses:
'200':
description: Thread(s) restored successfully
content:
application/json:
schema:
type: object
properties:
threadIds:
type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- threadIds
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
requestBody:
required: true
content:
application/json:
schema:
type: object
title: ThreadArchiveRestoreRequest
properties:
threadIds:
type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- threadIds
/api/v1/threads/{thread_id}/thumbnail:
patch:
operationId: threads.set_thumbnail
summary: Set thread's thumbnail
description: Set a thread's thumbnail image by providing a resource ID or an image uri of an already uploaded image.
The thumbnail will be used as a preview image for the thread in the UI.
tags:
- Threads
responses:
'200':
description: Thread thumbnail set successfully
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadGetResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
requestBody:
required: true
content:
application/json:
schema:
anyOf:
- $ref: '#/components/schemas/SetThumbnailUriRequest'
- $ref: '#/components/schemas/SetThumbnailFromResourceRequest'
parameters:
- schema:
type: string
in: path
name: thread_id
required: true
post:
operationId: threads.upload_thumbnail
summary: Upload thread thumbnail.
description: Set a thread's thumbnail image by uploading a file. The thumbnail will be used as a preview image for the
thread in the UI.
tags:
- Threads
responses:
'200':
description: Thread thumbnail set successfully
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadGetResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
description: Upload a file and set it as the thread's thumbnail.
properties:
thumbnail: {}
required:
- thumbnail
parameters:
- schema:
type: string
in: path
name: thread_id
required: true
/api/v1/threads/{thread_id}/shared:
get:
operationId: threads.list_shared
parameters:
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: query
name: pageIndex
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
summary: Thread shared with
tags:
- Threads
responses:
'200':
description: List of thread's shares
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadListSharedResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/threads/{thread_id}/files:
get:
operationId: threads.list_files
parameters:
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: query
name: includeArchived
schema:
anyOf:
- enum:
- 'false'
- 'true'
- type: boolean
required: true
- in: query
name: createdBy
schema:
type: string
- in: query
name: cursor
schema:
type: string
- in: query
name: order
schema:
enum:
- asc
- desc
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
summary: List resources for a Thread
tags:
- Threads
responses:
'200':
description: List of thread's resources matching query options
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceSignedUrlList'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/threads/{thread_id}/files/{res_id}:
get:
operationId: files.get
parameters:
- in: path
name: res_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Get a file resource for a Thread
tags:
- Threads
responses:
'200':
description: Thread resource with a signed URL for downloading
content:
application/json:
schema:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
checksum:
anyOf:
- type: string
maxLength: 64
- type: 'null'
createdAt:
type: string
createdBy:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
filename:
anyOf:
- type: string
- type: 'null'
imageUris:
anyOf:
- type: array
items:
type: string
- type: 'null'
isPrivate:
type: boolean
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
mimeType:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
size:
anyOf:
- type: integer
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
thumbnail: {}
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
url:
type: string
signatures:
anyOf:
- type: array
items:
type: object
properties:
affiliation:
anyOf:
- type: string
- type: 'null'
authorization:
anyOf:
- type: string
- type: 'null'
date:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
signature:
anyOf:
- type: string
- type: 'null'
signatureHash:
anyOf:
- type: string
- type: 'null'
resource:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
bucket:
type: string
checksum:
anyOf:
- type: string
maxLength: 64
- type: 'null'
createdAt:
type: string
createdBy:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
filename:
anyOf:
- type: string
- type: 'null'
imageUris:
anyOf:
- type: array
items:
type: string
- type: 'null'
isPrivate:
type: boolean
key:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
mimeType:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
size:
anyOf:
- type: integer
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
thumbnail: {}
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- bucket
- checksum
- createdAt
- createdBy
- filename
- imageUris
- isPrivate
- key
- metadata
- mimeType
- name
- ownerId
- resId
- size
- status
- thumbnail
- transferId
- transferredAt
- type
- updatedAt
thread:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
verification:
type: object
properties:
created:
type: string
documentOrientation:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
documentQualityScore:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
lineItems:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
processingTime:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
result:
anyOf:
- type: string
- type: 'null'
status:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
version:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- created
- documentOrientation
- documentQualityScore
- lineItems
- processingTime
- resId
- result
- status
- teamId
- userId
- version
required:
- affiliation
- authorization
- date
- name
- resId
- signature
- signatureHash
- type: 'null'
threads:
anyOf:
- type: array
items:
type: object
properties:
name:
anyOf:
- type: string
- type: 'null'
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- name
- threadId
- type: 'null'
verification:
anyOf:
- type: object
properties:
created:
type: string
documentOrientation:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
documentQualityScore:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
lineItems:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
processingTime:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
result:
anyOf:
- type: string
- type: 'null'
status:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
version:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- created
- documentOrientation
- documentQualityScore
- lineItems
- processingTime
- resId
- result
- status
- teamId
- userId
- version
- type: 'null'
required:
- archivedAt
- checksum
- createdAt
- createdBy
- filename
- imageUris
- isPrivate
- metadata
- mimeType
- name
- ownerId
- resId
- size
- status
- thumbnail
- transferId
- transferredAt
- type
- updatedAt
- url
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
post:
operationId: files.update
parameters:
- in: path
name: res_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadResourceUpdateRequest'
summary: Update a thread resource
description: Update resource attachment settings for a resource attached to this thread.
tags:
- Threads
responses:
'200':
description: Updated thread resource
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadResourceUpdateResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/threads/{thread_id}/links:
get:
operationId: thread_links.list_for_thread
parameters:
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: List thread links
tags:
- Threads
responses:
'200':
description: Thread's Links
content:
application/json:
schema:
type: array
items:
type: object
properties:
createdAt:
type: string
direction:
enum:
- forward
- inverse
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
relId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
relationship:
type: object
properties:
archived:
type: boolean
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
forwardLabel:
type: string
inverseLabel:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
relId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
type: string
updatedAt:
type: string
required:
- archived
- createdAt
- description
- forwardLabel
- inverseLabel
- metadata
- name
- ownerId
- relId
- slug
- updatedAt
sourceThreadArchivedAt:
anyOf:
- type: string
- type: 'null'
sourceThreadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sourceThreadName:
anyOf:
- type: string
- type: 'null'
targetThreadArchivedAt:
anyOf:
- type: string
- type: 'null'
targetThreadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
targetThreadName:
anyOf:
- type: string
- type: 'null'
threadLinkId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
required:
- createdAt
- direction
- metadata
- relId
- relationship
- sourceThreadArchivedAt
- sourceThreadId
- sourceThreadName
- targetThreadArchivedAt
- targetThreadId
- targetThreadName
- threadLinkId
- updatedAt
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/templates:
post:
operationId: templates.create
summary: Create a thread template
tags:
- Templates
responses:
'200':
description: The created thread template.
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadTemplate'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadTemplateInsert'
get:
operationId: templates.list
summary: List thread templates
tags:
- Templates
responses:
'200':
description: The thread template
content:
application/json:
schema:
type: object
properties:
templates:
type: array
items:
$ref: '#/components/schemas/ThreadTemplate'
total:
type: number
required:
- templates
- total
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- in: query
name: cursor
schema:
type: string
- in: query
name: order
schema:
enum:
- asc
- desc
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: q
schema:
type: string
/api/v1/templates/{templateId}:
patch:
operationId: templates.update
parameters:
- in: path
name: templateId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadTemplateUpdate'
summary: Update a thread template
tags:
- Templates
responses:
'200':
description: Updated thread template
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadTemplate'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
get:
operationId: templates.get
summary: Get a thread template
tags:
- Templates
responses:
'200':
description: The thread template
content:
application/json:
schema:
$ref: '#/components/schemas/ThreadTemplate'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- in: path
name: templateId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
/api/v1/teams:
get:
operationId: teams.list
parameters:
- in: query
name: excludeIds
schema:
type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- in: query
name: includeLinked
schema:
enum:
- 'false'
- 'true'
- in: query
name: order
schema:
enum:
- asc
- desc
- in: query
name: pageIndex
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: q
schema:
type: string
- in: query
name: role
schema:
enum:
- admin
- member
- in: query
name: rootId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
description: a UUID
summary: List teams
tags:
- Teams
responses:
'200':
description: Teams retrieved successfully
content:
application/json:
schema:
type: object
properties:
teams:
type: array
items:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
total:
type: number
required:
- teams
- total
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: member
/api/v1/teams/connected:
get:
operationId: teams.list_connected
summary: List connected teams
tags:
- Teams
responses:
'200':
description: List of connected teams
content:
application/json:
schema:
type: array
items:
type: object
properties:
acceptingTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
allow:
type: string
amendmentAcceptedById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
amendmentProposedById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
amendmentProposerTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
amendmentStatus:
anyOf:
- type: string
- type: 'null'
amendmentUpdatedAt:
anyOf:
- type: string
- type: 'null'
code:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
email:
anyOf:
- type: string
- type: 'null'
pendingAllow:
anyOf:
- type: string
- type: 'null'
requestingTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
respondedAt:
anyOf:
- type: string
- type: 'null'
responderId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
status:
type: string
updatedAt:
type: string
acceptedBy:
$ref: '#/components/schemas/Principal'
acceptingTeam:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
requestedBy:
$ref: '#/components/schemas/Principal'
requestingTeam:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
required:
- acceptingTeamId
- allow
- amendmentAcceptedById
- amendmentProposedById
- amendmentProposerTeamId
- amendmentStatus
- amendmentUpdatedAt
- code
- createdAt
- createdById
- email
- pendingAllow
- requestingTeamId
- respondedAt
- responderId
- status
- updatedAt
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: member
parameters:
- in: query
name: pageIndex
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
/api/v1/org/teams:
post:
operationId: org.teams.create
requestBody:
required: true
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/TeamCreate'
summary: Create one or more teams
tags:
- Org Admin
responses:
'201':
description: Team created successfully
content:
application/json:
schema:
type: array
items:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: org-admin
get:
operationId: org.teams.list
parameters:
- in: query
name: excludeIds
schema:
type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- in: query
name: includeLinked
schema:
enum:
- 'false'
- 'true'
- in: query
name: order
schema:
enum:
- asc
- desc
- in: query
name: pageIndex
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: q
schema:
type: string
- in: query
name: role
schema:
enum:
- admin
- member
- in: query
name: rootId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
description: a UUID
summary: List all teams in the organization
description: List every team in the active organization matching the query, including teams the caller is not a member
of.
tags:
- Org Admin
responses:
'200':
description: List of matching teams
content:
application/json:
schema:
type: object
properties:
teams:
type: array
items:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
total:
type: number
required:
- teams
- total
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-badges:
- name: New
color: rgb(0, 200, 190)
position: after
x-scalar-stability: experimental
x-required-role: org-admin
/api/v1/org/teams/{team_id}:
patch:
operationId: org.teams.update
parameters:
- in: path
name: team_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
childOfId:
anyOf:
- type: string
- type: 'null'
description:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
summary: Update a team
tags:
- Org Admin
responses:
'200':
description: Updated team
content:
application/json:
schema:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: org-admin
delete:
operationId: org.teams.delete
parameters:
- in: path
name: team_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Delete a team
description: Delete a team by its ID. This is a soft delete, the team will be marked as deleted but not removed from
the database.
tags:
- Org Admin
responses:
'200':
description: Deleted team
content:
application/json:
schema:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-scalar-stability: experimental
x-required-role: org-admin
/api/v1/org/teams/members:
post:
operationId: org.teams.members_upsert
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
memberships:
type: array
items:
type: object
properties:
role:
enum:
- admin
- member
teamId:
type: string
userId:
type: string
metadata:
type: object
required:
- role
- teamId
- userId
required:
- memberships
summary: Add/Update memberships
description: Add or update memberships for a team. This will create memberships if they don't exist, or update metadata
if they do.
tags:
- Org Admin
responses:
'200':
description: Updated memberships
content:
application/json:
schema:
type: array
items:
type: object
properties:
createdAt:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
role:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
depth:
type: number
org:
type: object
properties:
createdAt:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
website:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- logo
- name
- orgId
- slug
- updatedAt
- website
path:
type: string
team:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
user:
$ref: '#/components/schemas/User'
required:
- createdAt
- metadata
- role
- teamId
- updatedAt
- userId
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: org-admin
delete:
operationId: org.teams.members_delete
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
memberships:
type: array
items:
type: object
properties:
teamId:
type: string
userId:
type: string
required:
- teamId
- userId
required:
- memberships
summary: Remove memberships
description: Remove memberships for a team. This will remove the specified users from the team. If a specified user
is not a member of the team, it will be ignored.
tags:
- Org Admin
responses:
'200':
description: Removed memberships
content:
application/json:
schema:
type: array
items:
type: object
properties:
createdAt:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
role:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
depth:
type: number
org:
type: object
properties:
createdAt:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
website:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- logo
- name
- orgId
- slug
- updatedAt
- website
path:
type: string
team:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
user:
$ref: '#/components/schemas/User'
required:
- createdAt
- metadata
- role
- teamId
- updatedAt
- userId
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: org-admin
get:
operationId: org.teams.members_list
parameters:
- in: query
name: order
schema:
enum:
- asc
- desc
- in: query
name: pageIndex
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: q
schema:
type: string
- in: query
name: role
schema:
enum:
- admin
- member
- in: query
name: teamId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
description: a UUID
- in: query
name: userId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
description: a UUID
summary: List memberships
description: List memberships for a team, optionally filtered by user ID.
tags:
- Org Admin
responses:
'200':
description: List of team memberships
content:
application/json:
schema:
type: object
properties:
memberships:
type: array
items:
type: object
properties:
createdAt:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
role:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
depth:
type: number
org:
type: object
properties:
createdAt:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
website:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- logo
- name
- orgId
- slug
- updatedAt
- website
path:
type: string
team:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
user:
$ref: '#/components/schemas/User'
required:
- createdAt
- metadata
- role
- teamId
- updatedAt
- userId
total:
type: number
required:
- memberships
- total
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: org-admin
/api/v1/connections:
post:
operationId: connections.create
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
allow:
enum:
- receive
- send
- send_receive
email:
type: string
pattern: ^[\w%+.-]+@[\d.A-Za-z-]+\.[A-Za-z]{2,}$
format: email
required:
- allow
summary: Create a connection
description: Create a connection invite, which enables sharing between the two teams once accepted.
tags:
- Connections
responses:
'200':
description: Created connection
content:
application/json:
schema:
type: object
properties:
acceptingTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
allow:
type: string
amendmentAcceptedById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
amendmentProposedById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
amendmentProposerTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
amendmentStatus:
anyOf:
- type: string
- type: 'null'
amendmentUpdatedAt:
anyOf:
- type: string
- type: 'null'
code:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
email:
anyOf:
- type: string
- type: 'null'
pendingAllow:
anyOf:
- type: string
- type: 'null'
requestingTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
respondedAt:
anyOf:
- type: string
- type: 'null'
responderId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
status:
type: string
updatedAt:
type: string
acceptedBy:
$ref: '#/components/schemas/Principal'
acceptingTeam:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
requestedBy:
$ref: '#/components/schemas/Principal'
requestingTeam:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
required:
- acceptingTeamId
- allow
- amendmentAcceptedById
- amendmentProposedById
- amendmentProposerTeamId
- amendmentStatus
- amendmentUpdatedAt
- code
- createdAt
- createdById
- email
- pendingAllow
- requestingTeamId
- respondedAt
- responderId
- status
- updatedAt
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: team-admin
get:
operationId: connections.list
parameters:
- in: query
name: authedUserOnly
schema:
type: boolean
- in: query
name: box
schema:
enum:
- accepted
- requested
- in: query
name: excludeIds
schema:
type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- in: query
name: includeLinked
schema:
enum:
- 'false'
- 'true'
- in: query
name: order
schema:
enum:
- asc
- desc
- in: query
name: pageIndex
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: q
schema:
type: string
- in: query
name: role
schema:
enum:
- admin
- member
- in: query
name: rootId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
description: a UUID
- in: query
name: status
schema:
enum:
- accepted
- canceled
- connected
- paused
- pending
- rejected
summary: List connections
description: List connections in your organization, optionally filtered by team ID.
tags:
- Connections
responses:
'200':
description: List of connections
content:
application/json:
schema:
type: object
properties:
links:
type: array
items:
type: object
properties:
acceptingTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
allow:
type: string
amendmentAcceptedById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
amendmentProposedById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
amendmentProposerTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
amendmentStatus:
anyOf:
- type: string
- type: 'null'
amendmentUpdatedAt:
anyOf:
- type: string
- type: 'null'
code:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
email:
anyOf:
- type: string
- type: 'null'
pendingAllow:
anyOf:
- type: string
- type: 'null'
requestingTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
respondedAt:
anyOf:
- type: string
- type: 'null'
responderId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
status:
type: string
updatedAt:
type: string
acceptedBy:
$ref: '#/components/schemas/Principal'
acceptingTeam:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
requestedBy:
$ref: '#/components/schemas/Principal'
requestingTeam:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
required:
- acceptingTeamId
- allow
- amendmentAcceptedById
- amendmentProposedById
- amendmentProposerTeamId
- amendmentStatus
- amendmentUpdatedAt
- code
- createdAt
- createdById
- email
- pendingAllow
- requestingTeamId
- respondedAt
- responderId
- status
- updatedAt
total:
type: number
required:
- links
- total
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: team-admin
/api/v1/connections/{code}:
get:
operationId: connections.get
parameters:
- in: path
name: code
schema:
type: string
required: true
summary: Get a connection
description: Get a connection by invite code.
tags:
- Connections
responses:
'200':
description: Connection
content:
application/json:
schema:
type: object
properties:
acceptingTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
allow:
type: string
amendmentAcceptedById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
amendmentProposedById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
amendmentProposerTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
amendmentStatus:
anyOf:
- type: string
- type: 'null'
amendmentUpdatedAt:
anyOf:
- type: string
- type: 'null'
code:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
email:
anyOf:
- type: string
- type: 'null'
pendingAllow:
anyOf:
- type: string
- type: 'null'
requestingTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
respondedAt:
anyOf:
- type: string
- type: 'null'
responderId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
status:
type: string
updatedAt:
type: string
acceptedBy:
$ref: '#/components/schemas/Principal'
acceptingTeam:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
requestedBy:
$ref: '#/components/schemas/Principal'
requestingTeam:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
required:
- acceptingTeamId
- allow
- amendmentAcceptedById
- amendmentProposedById
- amendmentProposerTeamId
- amendmentStatus
- amendmentUpdatedAt
- code
- createdAt
- createdById
- email
- pendingAllow
- requestingTeamId
- respondedAt
- responderId
- status
- updatedAt
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: team-admin
delete:
operationId: connections.delete
parameters:
- in: path
name: code
schema:
type: string
required: true
summary: Delete a connection
tags:
- Connections
responses:
'200':
description: '`true` if successfully updated'
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: team-admin
/api/v1/connections/confirm:
patch:
operationId: connections.confirm
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
code:
type: string
required:
- code
summary: Confirm a connection
description: Confirm an accepted connection, completing the invite/accept/confirm handshake.
tags:
- Connections
responses:
'200':
description: '`true` if successfully updated'
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: team-admin
/api/v1/connections/pause:
patch:
operationId: connections.pause
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
code:
type: string
required:
- code
summary: Pause a connection
description: Suspend the sharing and shipment activity that depends on this connection without deleting it.
tags:
- Connections
responses:
'200':
description: '`true` if successfully updated'
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: team-admin
/api/v1/connections/cancel:
patch:
operationId: connections.cancel
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
code:
type: string
required:
- code
summary: Cancel a connection
tags:
- Connections
responses:
'200':
description: '`true` if successfully updated'
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: team-admin
/api/v1/connections/resume:
patch:
operationId: connections.resume
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
code:
type: string
required:
- code
summary: Resume a paused connection
tags:
- Connections
responses:
'200':
description: '`true` if successfully updated'
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: team-admin
/api/v1/connections/amend/propose:
post:
operationId: connections.amend_propose
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
allow:
enum:
- receive
- send
- send_receive
code:
type: string
required:
- allow
- code
summary: Propose a connection direction amendment
description: Propose a new data-flow direction for a connected Connection. Either team may propose; the partner must
accept and the proposer must confirm before it takes effect. The current direction stays in force until confirmation.
tags:
- Connections
responses:
'200':
description: '`true` if proposed'
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: team-admin
/api/v1/connections/amend/accept:
patch:
operationId: connections.amend_accept
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
code:
type: string
required:
- code
summary: Accept a pending connection amendment
description: Accept a proposed direction amendment. Only the team that did not propose may accept.
tags:
- Connections
responses:
'200':
description: '`true` if accepted'
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: team-admin
/api/v1/connections/amend/confirm:
patch:
operationId: connections.amend_confirm
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
code:
type: string
required:
- code
summary: Confirm an accepted connection amendment
description: Confirm an accepted direction amendment, making the new direction effective. Only the proposing team may
confirm. Existing shares whose flow is no longer permitted become dormant.
tags:
- Connections
responses:
'200':
description: '`true` if confirmed'
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: team-admin
/api/v1/connections/amend/cancel:
patch:
operationId: connections.amend_cancel
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
code:
type: string
required:
- code
summary: Cancel a pending connection amendment
description: Cancel a pending direction amendment before final confirmation. Either team may cancel.
tags:
- Connections
responses:
'200':
description: '`true` if canceled'
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: team-admin
/api/v1/connections/accept:
patch:
operationId: connections.accept
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
acceptingTeamId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
code:
type: string
required:
- acceptingTeamId
- code
summary: Accept a connection
tags:
- Connections
responses:
'200':
description: '`true` if successfully updated'
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: team-admin
/api/v1/connections/reject:
patch:
operationId: connections.reject
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
code:
type: string
required:
- code
summary: Reject a connection
tags:
- Connections
responses:
'200':
description: '`true` if successfully updated'
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
x-required-role: team-admin
/api/v1/notifications:
get:
operationId: notifications.list
summary: List notifications
tags:
- Notifications
responses:
'200':
description: List of notifications
content:
application/json:
schema:
type: object
properties:
team:
type: object
properties:
links:
type: array
items:
type: object
properties:
acceptingTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
allow:
type: string
amendmentAcceptedById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
amendmentProposedById:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
amendmentProposerTeamId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
amendmentStatus:
anyOf:
- type: string
- type: 'null'
amendmentUpdatedAt:
anyOf:
- type: string
- type: 'null'
code:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
email:
anyOf:
- type: string
- type: 'null'
pendingAllow:
anyOf:
- type: string
- type: 'null'
requestingTeamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
respondedAt:
anyOf:
- type: string
- type: 'null'
responderId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
status:
type: string
updatedAt:
type: string
acceptedBy:
$ref: '#/components/schemas/Principal'
acceptingTeam:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
requestedBy:
$ref: '#/components/schemas/Principal'
requestingTeam:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
depth:
type: number
num_members:
type: number
org:
type: object
properties:
name:
type: string
orgId:
type: string
required:
- name
- orgId
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
required:
- acceptingTeamId
- allow
- amendmentAcceptedById
- amendmentProposedById
- amendmentProposerTeamId
- amendmentStatus
- amendmentUpdatedAt
- code
- createdAt
- createdById
- email
- pendingAllow
- requestingTeamId
- respondedAt
- responderId
- status
- updatedAt
total:
type: number
required:
- links
- total
total:
type: number
user:
type: object
properties:
invites:
type: array
items:
type: object
properties:
email:
type: string
pattern: ^[\w%+.-]+@[\d.A-Za-z-]+\.[A-Za-z]{2,}$
format: email
expiresAt:
type: string
id:
type: string
inviterId:
type: string
organizationId:
type: string
role:
type: string
status:
enum:
- accepted
- canceled
- pending
- rejected
inviter:
type: object
properties:
email:
type: string
pattern: ^[\w%+.-]+@[\d.A-Za-z-]+\.[A-Za-z]{2,}$
format: email
id:
type: string
image:
anyOf:
- type: string
- type: 'null'
name:
type: string
required:
- email
- id
- image
- name
organization:
type: object
properties:
id:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
slug:
type: string
required:
- id
- logo
- name
- slug
required:
- email
- expiresAt
- id
- inviterId
- organizationId
- role
- status
total:
type: number
required:
- invites
- total
required:
- team
- total
- user
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- in: query
name: pageIndex
schema:
type: number
default: 0
- in: query
name: pageSize
schema:
type: number
default: 20
- in: query
name: status
schema:
anyOf:
- const: accepted
description: Filter by status of the notification
- const: canceled
description: Filter by status of the notification
- const: pending
description: Filter by status of the notification
- const: rejected
description: Filter by status of the notification
description: Filter by status of the notification
/api/v1/orgs/invites:
get:
operationId: orgs.list_invites
parameters:
- in: query
name: status
schema:
anyOf:
- const: accepted
description: Filter by status of the notification
- const: canceled
description: Filter by status of the notification
- const: pending
description: Filter by status of the notification
- const: rejected
description: Filter by status of the notification
description: Filter by status of the notification
summary: List organization invites
tags:
- Organizations
responses:
'200':
description: List of organization invites
content:
application/json:
schema:
type: object
properties:
invites:
type: array
items:
type: object
properties:
email:
type: string
pattern: ^[\w%+.-]+@[\d.A-Za-z-]+\.[A-Za-z]{2,}$
format: email
expiresAt:
type: string
id:
type: string
inviterId:
type: string
organizationId:
type: string
role:
type: string
status:
enum:
- accepted
- canceled
- pending
- rejected
inviter:
type: object
properties:
email:
type: string
pattern: ^[\w%+.-]+@[\d.A-Za-z-]+\.[A-Za-z]{2,}$
format: email
id:
type: string
image:
anyOf:
- type: string
- type: 'null'
name:
type: string
required:
- email
- id
- image
- name
organization:
type: object
properties:
id:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
slug:
type: string
required:
- id
- logo
- name
- slug
required:
- email
- expiresAt
- id
- inviterId
- organizationId
- role
- status
total:
type: number
required:
- invites
- total
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/orgs/invites/accept:
post:
operationId: orgs.accept_invite
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
invitationId:
type: string
description: the invitation ID to accept (must be addressed to the caller's email)
minLength: 1
required:
- invitationId
summary: Accept an organization invitation
description: Accept a pending organization invitation addressed to the authenticated user's email. Callable before any
organization/team context is selected.
tags:
- Organizations
responses:
'200':
description: Invitation accepted
content:
application/json:
schema:
type: object
properties:
status:
const: accepted
required:
- status
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/summary:
get:
operationId: metrics.Summary
parameters:
- in: query
name: include
schema:
anyOf:
- type: array
items:
enum:
- files.failed
- files.passed
- files.processed
- files.total
- tags
- templates
- threads
- type: 'null'
summary: Get summary count metrics
description: Get a summary of thread, template, tag, and file counts for the current organization-team context. This
is used to populate the dashboard and give users a quick overview of their threads and associated metadata.
tags:
- Metrics
responses:
'200':
description: Summary of threads, templates, tags, and files
content:
application/json:
schema:
type: array
items:
type: object
properties:
count:
type: number
name:
enum:
- files.failed
- files.passed
- files.processed
- files.total
- tags
- templates
- threads
required:
- count
- name
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/sharing:
get:
operationId: sharing.list
parameters:
- in: query
name: direction
schema:
enum:
- in
- out
required: true
- in: query
name: objectId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
description: a UUID
- in: query
name: objectType
schema:
enum:
- bundle
- thread
- in: query
name: pageIndex
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: q
schema:
type: string
summary: List sharing relationships
description: List items shared with the active team or items the active team has shared, based on the requested direction.
tags:
- Sharing
responses:
'200':
description: List of sharing relationships matching the query
content:
application/json:
schema:
$ref: '#/components/schemas/ListTuplesResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
post:
operationId: sharing.add
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ShareRequest'
summary: Share a bundle or thread
description: Create one or more sharing relationships for the requested threads or bundles.
tags:
- Sharing
responses:
'200':
description: Sharing relationships created successfully
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
delete:
operationId: sharing.remove
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ShareRemoveRequest'
summary: Remove sharing relationships
description: Delete one or more existing sharing tuples by ID.
tags:
- Sharing
responses:
'200':
description: Sharing relationships removed successfully
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/sharing/access-summary:
get:
operationId: sharing.access_summary
parameters:
- in: query
name: objectId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: query
name: objectType
schema:
enum:
- bundle
- thread
required: true
summary: Effective access summary for a thread or bundle
description: 'List every team that can access the item, attributing each grant to its source: owner, a direct share,
or access inherited from an ancestor folder.'
tags:
- Sharing
responses:
'200':
description: Effective access summary
content:
application/json:
schema:
$ref: '#/components/schemas/AccessSummaryResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/sharing/partner-inventory:
get:
operationId: sharing.partner_inventory
parameters:
- in: query
name: teamId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Per-partner sharing inventory
description: List every share grant between the active team and the given partner team in both directions — including
grants suspended by a paused connection — with counts and the number of in-flight transfers between the pair.
tags:
- Sharing
responses:
'200':
description: Sharing inventory for the partner team
content:
application/json:
schema:
$ref: '#/components/schemas/PartnerInventoryResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/sharing/{tuple_id}:
patch:
operationId: sharing.update
parameters:
- in: path
name: tuple_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ShareUpdateRequest'
summary: Update a sharing relationship
description: Update the relation for an existing sharing tuple.
tags:
- Sharing
responses:
'200':
description: Sharing relationship updated successfully
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Forbidden
content:
application/json:
schema:
type: object
properties:
code:
const: FORBIDDEN
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/events:
get:
operationId: events.list
summary: List events
tags:
- Events
responses:
'200':
description: List of events (Activity Groups when grouped).
content:
application/json:
schema:
$ref: '#/components/schemas/EventListResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- in: query
name: actionFilter
schema:
anyOf:
- type: string
- type: array
items:
type: string
- in: query
name: cursor
schema:
type: string
- in: query
name: excludeActionFilter
schema:
type: string
- in: query
name: groupBy
schema:
const: activity
- in: query
name: occurred
schema:
type: string
- in: query
name: order
schema:
enum:
- asc
- desc
- in: query
name: orgId
schema:
type: string
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: teamId
schema:
type: string
- in: query
name: threadId
schema:
type: string
- in: query
name: withTargets
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
- in: query
name: withUser
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
/api/v1/users/profile:
get:
operationId: users.get_profile
summary: Get current profile
description: Get current profile of authenticated user
tags:
- Users
responses:
'200':
description: Profile of authenticated user
content:
application/json:
schema:
type: object
properties:
user:
$ref: '#/components/schemas/User'
orgs:
type: array
items:
type: object
properties:
createdAt:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
orgId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
role:
anyOf:
- type: string
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
userId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
org:
type: object
properties:
createdAt:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
website:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- logo
- name
- orgId
- slug
- updatedAt
- website
required:
- createdAt
- metadata
- orgId
- role
- status
- updatedAt
- userId
teams:
type: array
items:
type: object
properties:
createdAt:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
role:
type: string
teamId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
updatedAt:
type: string
userId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
depth:
type: number
path:
type: string
team:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
teamId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
updatedAt:
type: string
depth:
type: number
num_members:
type: number
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
required:
- createdAt
- metadata
- role
- teamId
- updatedAt
- userId
required:
- user
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
patch:
operationId: users.update_profile
requestBody:
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/UpdateProfileRequest'
summary: Update profile
description: Update profile of authenticated user
tags:
- Users
responses:
'200':
description: Updated Profile information
content:
application/json:
schema:
type: object
properties:
avatar:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
email:
type: string
emailVerified:
type: boolean
familyName:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
phone:
anyOf:
- type: string
- type: 'null'
profileId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
required:
- avatar
- createdAt
- email
- emailVerified
- familyName
- name
- phone
- profileId
- updatedAt
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/users/{user_id}:
get:
operationId: users.get
parameters:
- in: path
name: user_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Get a user's profile
tags:
- Users
responses:
'200':
description: User's Profile
content:
application/json:
schema:
type: object
properties:
user:
$ref: '#/components/schemas/User'
orgs:
type: array
items:
type: object
properties:
createdAt:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
orgId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
role:
anyOf:
- type: string
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
userId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
org:
type: object
properties:
createdAt:
type: string
logo:
anyOf:
- type: string
- type: 'null'
name:
type: string
orgId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
website:
anyOf:
- type: string
- type: 'null'
required:
- createdAt
- logo
- name
- orgId
- slug
- updatedAt
- website
required:
- createdAt
- metadata
- orgId
- role
- status
- updatedAt
- userId
teams:
type: array
items:
type: object
properties:
createdAt:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
role:
type: string
teamId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
updatedAt:
type: string
userId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
depth:
type: number
path:
type: string
team:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
detail:
anyOf:
- type: string
- type: 'null'
logo:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
orgId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
teamId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
updatedAt:
type: string
depth:
type: number
num_members:
type: number
path:
type: string
required:
- createdAt
- description
- detail
- logo
- name
- orgId
- teamId
- updatedAt
required:
- createdAt
- metadata
- role
- teamId
- updatedAt
- userId
required:
- user
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/files:
get:
operationId: files.list
parameters:
- in: query
name: includeArchived
schema:
anyOf:
- enum:
- 'false'
- 'true'
- type: boolean
required: true
- in: query
name: createdBy
schema:
type: string
- in: query
name: cursor
schema:
type: string
- in: query
name: order
schema:
enum:
- asc
- desc
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: threadId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
description: a UUID
summary: Search Resources
tags:
- Files
responses:
'200':
description: List of resources matching query
content:
application/json:
schema:
type: object
properties:
resources:
type: array
items:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
checksum:
anyOf:
- type: string
maxLength: 64
- type: 'null'
createdAt:
type: string
createdBy:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
filename:
anyOf:
- type: string
- type: 'null'
imageUris:
anyOf:
- type: array
items:
type: string
- type: 'null'
isPrivate:
type: boolean
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
mimeType:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
size:
anyOf:
- type: integer
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
thumbnail: {}
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
url:
type: string
signatures:
anyOf:
- type: array
items:
type: object
properties:
affiliation:
anyOf:
- type: string
- type: 'null'
authorization:
anyOf:
- type: string
- type: 'null'
date:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
signature:
anyOf:
- type: string
- type: 'null'
signatureHash:
anyOf:
- type: string
- type: 'null'
resource:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
bucket:
type: string
checksum:
anyOf:
- type: string
maxLength: 64
- type: 'null'
createdAt:
type: string
createdBy:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
filename:
anyOf:
- type: string
- type: 'null'
imageUris:
anyOf:
- type: array
items:
type: string
- type: 'null'
isPrivate:
type: boolean
key:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
mimeType:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
size:
anyOf:
- type: integer
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
thumbnail: {}
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- bucket
- checksum
- createdAt
- createdBy
- filename
- imageUris
- isPrivate
- key
- metadata
- mimeType
- name
- ownerId
- resId
- size
- status
- thumbnail
- transferId
- transferredAt
- type
- updatedAt
thread:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
verification:
type: object
properties:
created:
type: string
documentOrientation:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
documentQualityScore:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
lineItems:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
processingTime:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
result:
anyOf:
- type: string
- type: 'null'
status:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
version:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- created
- documentOrientation
- documentQualityScore
- lineItems
- processingTime
- resId
- result
- status
- teamId
- userId
- version
required:
- affiliation
- authorization
- date
- name
- resId
- signature
- signatureHash
- type: 'null'
threads:
anyOf:
- type: array
items:
type: object
properties:
name:
anyOf:
- type: string
- type: 'null'
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- name
- threadId
- type: 'null'
verification:
anyOf:
- type: object
properties:
created:
type: string
documentOrientation:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
documentQualityScore:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
lineItems:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
processingTime:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
result:
anyOf:
- type: string
- type: 'null'
status:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
version:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- created
- documentOrientation
- documentQualityScore
- lineItems
- processingTime
- resId
- result
- status
- teamId
- userId
- version
- type: 'null'
required:
- archivedAt
- checksum
- createdAt
- createdBy
- filename
- imageUris
- isPrivate
- metadata
- mimeType
- name
- ownerId
- resId
- size
- status
- thumbnail
- transferId
- transferredAt
- type
- updatedAt
- url
total:
type: number
required:
- resources
- total
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
post:
operationId: files.upload
requestBody:
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/ResourceUploadForm'
summary: Upload a file
description: 'Upload a file using a simple POST request. The request must include `multipart/form-data` with the file
and metadata.On completion, APID creates the resource and returns its details.
This endpoint is intended
for smaller files and does not support resumable uploads. For larger files, please use the `/upload` endpoint which
supports the TUS protocol for resumable uploads. '
tags:
- Files
responses:
'200':
description: Created resources for completed upload
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceUploadResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/files/search:
get:
operationId: files.search
parameters:
- in: query
name: includeArchived
schema:
enum:
- 'false'
- 'true'
default: 'false'
- in: query
name: mimeFilters
schema:
type: array
items:
type: string
- in: query
name: order
schema:
enum:
- asc
- desc
- in: query
name: pageIndex
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: q
schema:
type: string
- in: query
name: threadId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
description: a UUID
- in: query
name: verification
schema:
enum:
- any
- failed
- passed
summary: Search Resources
tags:
- Files
responses:
'200':
description: List of resources matching query
content:
application/json:
schema:
type: object
properties:
resources:
type: array
items:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
checksum:
anyOf:
- type: string
maxLength: 64
- type: 'null'
createdAt:
type: string
createdBy:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
filename:
anyOf:
- type: string
- type: 'null'
imageUris:
anyOf:
- type: array
items:
type: string
- type: 'null'
isPrivate:
type: boolean
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
mimeType:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
size:
anyOf:
- type: integer
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
thumbnail: {}
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
url:
type: string
signatures:
anyOf:
- type: array
items:
type: object
properties:
affiliation:
anyOf:
- type: string
- type: 'null'
authorization:
anyOf:
- type: string
- type: 'null'
date:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
signature:
anyOf:
- type: string
- type: 'null'
signatureHash:
anyOf:
- type: string
- type: 'null'
resource:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
bucket:
type: string
checksum:
anyOf:
- type: string
maxLength: 64
- type: 'null'
createdAt:
type: string
createdBy:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
filename:
anyOf:
- type: string
- type: 'null'
imageUris:
anyOf:
- type: array
items:
type: string
- type: 'null'
isPrivate:
type: boolean
key:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
mimeType:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
size:
anyOf:
- type: integer
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
thumbnail: {}
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- bucket
- checksum
- createdAt
- createdBy
- filename
- imageUris
- isPrivate
- key
- metadata
- mimeType
- name
- ownerId
- resId
- size
- status
- thumbnail
- transferId
- transferredAt
- type
- updatedAt
thread:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
verification:
type: object
properties:
created:
type: string
documentOrientation:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
documentQualityScore:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
lineItems:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
processingTime:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
result:
anyOf:
- type: string
- type: 'null'
status:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
version:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- created
- documentOrientation
- documentQualityScore
- lineItems
- processingTime
- resId
- result
- status
- teamId
- userId
- version
required:
- affiliation
- authorization
- date
- name
- resId
- signature
- signatureHash
- type: 'null'
threads:
anyOf:
- type: array
items:
type: object
properties:
name:
anyOf:
- type: string
- type: 'null'
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- name
- threadId
- type: 'null'
verification:
anyOf:
- type: object
properties:
created:
type: string
documentOrientation:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
documentQualityScore:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
lineItems:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
processingTime:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
result:
anyOf:
- type: string
- type: 'null'
status:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
version:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- created
- documentOrientation
- documentQualityScore
- lineItems
- processingTime
- resId
- result
- status
- teamId
- userId
- version
- type: 'null'
required:
- archivedAt
- checksum
- createdAt
- createdBy
- filename
- imageUris
- isPrivate
- metadata
- mimeType
- name
- ownerId
- resId
- size
- status
- thumbnail
- transferId
- transferredAt
- type
- updatedAt
- url
total:
type: number
required:
- resources
- total
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/files/urls:
post:
operationId: files.get_signed_urls
parameters:
- in: query
name: ids
schema:
type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required: true
description: Resource IDs
summary: Get signed URLs
tags:
- Files
responses:
'200':
description: List of resources matching query
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceSignedUrlList'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/files/signatures:
get:
operationId: files.search_signatures
summary: Search resource signatures
tags:
- Files
responses:
'200':
description: List of signatures matching query
content:
application/json:
schema:
type: object
properties:
signatures:
type: array
items:
type: object
properties:
affiliation:
anyOf:
- type: string
- type: 'null'
authorization:
anyOf:
- type: string
- type: 'null'
date:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
signature:
anyOf:
- type: string
- type: 'null'
signatureHash:
anyOf:
- type: string
- type: 'null'
resource:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
bucket:
type: string
checksum:
anyOf:
- type: string
maxLength: 64
- type: 'null'
createdAt:
type: string
createdBy:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
filename:
anyOf:
- type: string
- type: 'null'
imageUris:
anyOf:
- type: array
items:
type: string
- type: 'null'
isPrivate:
type: boolean
key:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
mimeType:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
size:
anyOf:
- type: integer
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
thumbnail: {}
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- bucket
- checksum
- createdAt
- createdBy
- filename
- imageUris
- isPrivate
- key
- metadata
- mimeType
- name
- ownerId
- resId
- size
- status
- thumbnail
- transferId
- transferredAt
- type
- updatedAt
thread:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
verification:
type: object
properties:
created:
type: string
documentOrientation:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
documentQualityScore:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
lineItems:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
processingTime:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
result:
anyOf:
- type: string
- type: 'null'
status:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
version:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- created
- documentOrientation
- documentQualityScore
- lineItems
- processingTime
- resId
- result
- status
- teamId
- userId
- version
required:
- affiliation
- authorization
- date
- name
- resId
- signature
- signatureHash
total:
type: number
required:
- signatures
- total
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- in: query
name: includeArchived
schema:
anyOf:
- enum:
- 'false'
- 'true'
- type: boolean
- in: query
name: order
schema:
enum:
- asc
- desc
- in: query
name: pageIndex
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: q
schema:
type: string
- in: query
name: result
schema:
enum:
- failed
- passed
/api/v1/files/metrics:
get:
operationId: files.metrics
summary: File verification metrics
description: Get file verification metrics resources matching query
tags:
- Files
responses:
'200':
description: Verification metrics for resources matching query
content:
application/json:
schema:
type: object
properties:
error:
type: number
failed:
type: number
no_extractions:
type: number
passed:
type: number
pending:
type: number
total:
type: number
unsupported:
type: number
required:
- error
- failed
- no_extractions
- passed
- pending
- total
- unsupported
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- in: query
name: includeArchived
schema:
enum:
- 'false'
- 'true'
default: 'false'
- in: query
name: mimeFilters
schema:
type: array
items:
type: string
- in: query
name: order
schema:
enum:
- asc
- desc
- in: query
name: pageIndex
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: q
schema:
type: string
- in: query
name: threadId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
description: a UUID
- in: query
name: verification
schema:
enum:
- any
- failed
- passed
/api/v1/files/verification/{resource_id}/{thread_id}:
get:
operationId: files.get_verification_latest
parameters:
- in: path
name: resource_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Get latest verification
description: Get the latest file verification result for a resource tied to a thread
tags:
- Files
responses:
'200':
description: List of resources matching query
content:
application/json:
schema:
type: object
properties:
validation:
anyOf:
- type: object
description: Validation result for the resource and thread, null if no validation has been performed
yet
properties:
completedAt:
anyOf:
- type: string
- type: 'null'
documentId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
errors:
anyOf:
- type: array
items:
type: object
properties:
error:
type: string
field:
type: string
required:
- error
- field
- type: 'null'
extractions:
type: array
items:
type: object
properties:
boxNumber:
type: string
confidence:
anyOf:
- type: number
- type: 'null'
fieldFound:
enum:
- found
- not found
- undetermined
fieldName:
type: string
fieldNameValue:
anyOf:
- type: string
- type: 'null'
fieldValue:
anyOf:
- type: string
- type: 'null'
fieldValueType:
enum:
- image
- string
importance:
enum:
- high
- low
- medium
message:
anyOf:
- type: string
- type: 'null'
outcome:
enum:
- fail
- pass
- undetermined
boxNumberValue:
anyOf:
- type: string
- type: 'null'
required:
- boxNumber
- confidence
- fieldFound
- fieldName
- fieldNameValue
- fieldValue
- fieldValueType
- importance
- message
- outcome
fileInfo:
type: object
properties:
fileVersion:
type: number
formName:
type: string
url:
type: string
format: uri
required:
- fileVersion
- formName
- url
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
overallMetrics:
type: object
properties:
documentOrientation:
anyOf:
- type: number
- type: 'null'
documentQualityScore:
anyOf:
- type: number
- type: 'null'
processingTime:
anyOf:
- type: number
- type: 'null'
required:
- documentOrientation
- documentQualityScore
- processingTime
result:
anyOf:
- const: error_processing
- const: failed_content
- const: failed_format
- const: failed_malware
- const: failed_size
- const: no_extractions_found
- const: passed
- const: processing
- const: unsupported_form_type
- type: 'null'
status:
enum:
- completed
- error
- extraction_completed
- processing
- submitted
- unknown
submittedAt:
anyOf:
- type: string
- type: 'null'
verifications:
type: array
items:
type: object
properties:
fields:
type: array
items:
type: string
message:
anyOf:
- type: string
- type: 'null'
name:
type: string
outcome:
enum:
- fail
- pass
required:
- fields
- message
- name
- outcome
required:
- completedAt
- documentId
- errors
- extractions
- fileInfo
- id
- overallMetrics
- result
- status
- submittedAt
- verifications
- type: 'null'
description: Validation result for the resource and thread, null if no validation has been performed
yet
description: Validation result for the resource and thread, null if no validation has been performed yet
verification:
anyOf:
- $ref: '#/components/schemas/ResourceVerification'
- type: 'null'
description: Verification result for the resource and thread, null if no verification has been performed
yet
description: Verification result for the resource and thread, null if no verification has been performed
yet
required:
- validation
- verification
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
patch:
operationId: files.update_verification
parameters:
- in: path
name: resource_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
lineItems:
type: array
items:
$ref: '#/components/schemas/DocLineItem'
result:
type: object
properties:
completedAt:
anyOf:
- type: string
- type: 'null'
documentId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
errors:
anyOf:
- type: array
items:
type: object
properties:
error:
type: string
field:
type: string
required:
- error
- field
- type: 'null'
extractions:
type: array
items:
type: object
properties:
boxNumber:
type: string
confidence:
anyOf:
- type: number
- type: 'null'
fieldFound:
enum:
- found
- not found
- undetermined
fieldName:
type: string
fieldNameValue:
anyOf:
- type: string
- type: 'null'
fieldValue:
anyOf:
- type: string
- type: 'null'
fieldValueType:
enum:
- image
- string
importance:
enum:
- high
- low
- medium
message:
anyOf:
- type: string
- type: 'null'
outcome:
enum:
- fail
- pass
- undetermined
boxNumberValue:
anyOf:
- type: string
- type: 'null'
required:
- boxNumber
- confidence
- fieldFound
- fieldName
- fieldNameValue
- fieldValue
- fieldValueType
- importance
- message
- outcome
fileInfo:
type: object
properties:
fileVersion:
type: number
formName:
type: string
url:
type: string
format: uri
required:
- fileVersion
- formName
- url
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
overallMetrics:
type: object
properties:
documentOrientation:
anyOf:
- type: number
- type: 'null'
documentQualityScore:
anyOf:
- type: number
- type: 'null'
processingTime:
anyOf:
- type: number
- type: 'null'
required:
- documentOrientation
- documentQualityScore
- processingTime
result:
anyOf:
- const: error_processing
- const: failed_content
- const: failed_format
- const: failed_malware
- const: failed_size
- const: no_extractions_found
- const: passed
- const: processing
- const: unsupported_form_type
- type: 'null'
status:
enum:
- completed
- error
- extraction_completed
- processing
- submitted
- unknown
submittedAt:
anyOf:
- type: string
- type: 'null'
verifications:
type: array
items:
type: object
properties:
fields:
type: array
items:
type: string
message:
anyOf:
- type: string
- type: 'null'
name:
type: string
outcome:
enum:
- fail
- pass
required:
- fields
- message
- name
- outcome
required:
- completedAt
- documentId
- errors
- extractions
- fileInfo
- id
- overallMetrics
- result
- status
- submittedAt
- verifications
summary: Update file verification
description: Update file verification line items for approval or review
tags:
- Files
responses:
'200':
description: Updated verification line items
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceVerification'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/files/verification/{resource_id}/{thread_id}/start:
post:
operationId: files.start_verification
parameters:
- in: path
name: resource_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
formName:
enum:
- 8130-3
- EASA-1
summary: Start verification
description: Start document validation for a resource tied to a thread if it has not already started.
tags:
- Files
responses:
'200':
description: Verification start result
content:
application/json:
schema:
type: object
properties:
started:
type: boolean
validation:
anyOf:
- type: object
properties:
completedAt:
anyOf:
- type: string
- type: 'null'
documentId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
errors:
anyOf:
- type: array
items:
type: object
properties:
error:
type: string
field:
type: string
required:
- error
- field
- type: 'null'
extractions:
type: array
items:
type: object
properties:
boxNumber:
type: string
confidence:
anyOf:
- type: number
- type: 'null'
fieldFound:
enum:
- found
- not found
- undetermined
fieldName:
type: string
fieldNameValue:
anyOf:
- type: string
- type: 'null'
fieldValue:
anyOf:
- type: string
- type: 'null'
fieldValueType:
enum:
- image
- string
importance:
enum:
- high
- low
- medium
message:
anyOf:
- type: string
- type: 'null'
outcome:
enum:
- fail
- pass
- undetermined
boxNumberValue:
anyOf:
- type: string
- type: 'null'
required:
- boxNumber
- confidence
- fieldFound
- fieldName
- fieldNameValue
- fieldValue
- fieldValueType
- importance
- message
- outcome
fileInfo:
type: object
properties:
fileVersion:
type: number
formName:
type: string
url:
type: string
format: uri
required:
- fileVersion
- formName
- url
id:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
overallMetrics:
type: object
properties:
documentOrientation:
anyOf:
- type: number
- type: 'null'
documentQualityScore:
anyOf:
- type: number
- type: 'null'
processingTime:
anyOf:
- type: number
- type: 'null'
required:
- documentOrientation
- documentQualityScore
- processingTime
result:
anyOf:
- const: error_processing
- const: failed_content
- const: failed_format
- const: failed_malware
- const: failed_size
- const: no_extractions_found
- const: passed
- const: processing
- const: unsupported_form_type
- type: 'null'
status:
enum:
- completed
- error
- extraction_completed
- processing
- submitted
- unknown
submittedAt:
anyOf:
- type: string
- type: 'null'
verifications:
type: array
items:
type: object
properties:
fields:
type: array
items:
type: string
message:
anyOf:
- type: string
- type: 'null'
name:
type: string
outcome:
enum:
- fail
- pass
required:
- fields
- message
- name
- outcome
required:
- completedAt
- documentId
- errors
- extractions
- fileInfo
- id
- overallMetrics
- result
- status
- submittedAt
- verifications
- type: 'null'
verification:
anyOf:
- $ref: '#/components/schemas/ResourceVerification'
- type: 'null'
required:
- started
- validation
- verification
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/files/{resource_id}/download:
get:
operationId: files.download
parameters:
- in: path
name: resource_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Download a file
description: Create an attachment download for a resource visible in the current context.
tags:
- Files
responses:
'302':
description: Redirect to the signed attachment download URL.
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/files/finalize:
post:
operationId: files.create_finalize
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
requests:
type: array
items:
$ref: '#/components/schemas/UploadResourceRequest'
expectedUpdatedAt:
type: string
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- requests
summary: Finalize uploaded resources
description: Create or update resource records for objects that have already been uploaded to object storage, including
TUS uploads.
tags:
- Files
responses:
'200':
description: Created or updated resources
content:
application/json:
schema:
type: array
items:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
checksum:
anyOf:
- type: string
maxLength: 64
- type: 'null'
createdAt:
type: string
createdBy:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
filename:
anyOf:
- type: string
- type: 'null'
imageUris:
anyOf:
- type: array
items:
type: string
- type: 'null'
isPrivate:
type: boolean
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
mimeType:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
size:
anyOf:
- type: integer
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
thumbnail: {}
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
url:
type: string
signatures:
anyOf:
- type: array
items:
type: object
properties:
affiliation:
anyOf:
- type: string
- type: 'null'
authorization:
anyOf:
- type: string
- type: 'null'
date:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
signature:
anyOf:
- type: string
- type: 'null'
signatureHash:
anyOf:
- type: string
- type: 'null'
resource:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
bucket:
type: string
checksum:
anyOf:
- type: string
maxLength: 64
- type: 'null'
createdAt:
type: string
createdBy:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
filename:
anyOf:
- type: string
- type: 'null'
imageUris:
anyOf:
- type: array
items:
type: string
- type: 'null'
isPrivate:
type: boolean
key:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
mimeType:
anyOf:
- type: string
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
size:
anyOf:
- type: integer
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
status:
anyOf:
- type: string
- type: 'null'
thumbnail: {}
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
type:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- bucket
- checksum
- createdAt
- createdBy
- filename
- imageUris
- isPrivate
- key
- metadata
- mimeType
- name
- ownerId
- resId
- size
- status
- thumbnail
- transferId
- transferredAt
- type
- updatedAt
thread:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
verification:
type: object
properties:
created:
type: string
documentOrientation:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
documentQualityScore:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
lineItems:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
processingTime:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
result:
anyOf:
- type: string
- type: 'null'
status:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
version:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- created
- documentOrientation
- documentQualityScore
- lineItems
- processingTime
- resId
- result
- status
- teamId
- userId
- version
required:
- affiliation
- authorization
- date
- name
- resId
- signature
- signatureHash
- type: 'null'
threads:
anyOf:
- type: array
items:
type: object
properties:
name:
anyOf:
- type: string
- type: 'null'
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- name
- threadId
- type: 'null'
verification:
anyOf:
- type: object
properties:
created:
type: string
documentOrientation:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
documentQualityScore:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
lineItems:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
processingTime:
anyOf:
- type: number
maximum: 9007199254740991
minimum: -9007199254740991
- type: 'null'
resId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
result:
anyOf:
- type: string
- type: 'null'
status:
type: string
teamId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
userId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
version:
type: integer
maximum: 2147483647
minimum: -2147483648
required:
- created
- documentOrientation
- documentQualityScore
- lineItems
- processingTime
- resId
- result
- status
- teamId
- userId
- version
- type: 'null'
required:
- archivedAt
- checksum
- createdAt
- createdBy
- filename
- imageUris
- isPrivate
- metadata
- mimeType
- name
- ownerId
- resId
- size
- status
- thumbnail
- transferId
- transferredAt
- type
- updatedAt
- url
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/links:
post:
operationId: thread_links.create
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
links:
type: array
items:
type: object
properties:
sourceThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
targetThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- sourceThreadId
- targetThreadId
relId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
direction:
enum:
- forward
- inverse
default: forward
required:
- links
- relId
summary: Create thread links
tags:
- Thread Links
responses:
'201':
description: Created thread links
content:
application/json:
schema:
type: object
properties:
created:
type: array
items:
type: object
properties:
createdAt:
type: string
direction:
enum:
- forward
- inverse
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
relId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sourceThreadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
targetThreadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
threadLinkId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
required:
- createdAt
- direction
- metadata
- relId
- sourceThreadId
- targetThreadId
- threadLinkId
- updatedAt
errors:
type: array
items:
type: object
properties:
message:
type: string
threadId:
type: string
required:
- message
- threadId
required:
- created
- errors
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
get:
operationId: thread_links.list
parameters:
- in: query
name: directionFilter
schema:
anyOf:
- const: forward
description: Filter links by direction. If not provided, returns links in both directions.
- const: inverse
description: Filter links by direction. If not provided, returns links in both directions.
description: Filter links by direction. If not provided, returns links in both directions.
- in: query
name: pageIndex
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: q
schema:
type: string
description: Search query to filter links by thread or relationship name
- in: query
name: relId
schema:
anyOf:
- type: string
description: Filter links by relationship ID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: Filter links by relationship ID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: Filter links by relationship ID
format: uuid
format: uuid
description: Filter links by relationship ID
summary: List thread links
tags:
- Thread Links
responses:
'200':
description: Thread links
content:
application/json:
schema:
type: object
properties:
links:
type: array
items:
type: object
properties:
createdAt:
type: string
direction:
enum:
- forward
- inverse
forwardLabel:
type: string
inverseLabel:
type: string
relId:
type: string
relationshipName:
type: string
sourceThreadId:
type: string
sourceThreadName:
anyOf:
- type: string
- type: 'null'
targetThreadId:
type: string
targetThreadName:
anyOf:
- type: string
- type: 'null'
threadLinkId:
type: string
required:
- createdAt
- direction
- forwardLabel
- inverseLabel
- relId
- relationshipName
- sourceThreadId
- sourceThreadName
- targetThreadId
- targetThreadName
- threadLinkId
total:
type: number
required:
- links
- total
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/links/available-threads:
get:
operationId: thread_links.available_threads
parameters:
- in: query
name: relId
schema:
anyOf:
- type: string
description: Relationship type used to determine existing links to exclude from available threads
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: Relationship type used to determine existing links to exclude from available threads
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: Relationship type used to determine existing links to exclude from available threads
format: uuid
format: uuid
required: true
description: Relationship type used to determine existing links to exclude from available threads
- in: query
name: includeArchived
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
- in: query
name: order
schema:
enum:
- asc
- desc
- in: query
name: orderCol
schema:
enum:
- createdAt
- name
- updatedAt
- in: query
name: pageIndex
schema:
anyOf:
- type: integer
minimum: 0
- type: string
pattern: ^(0|[1-9]\d*)$
- in: query
name: pageSize
schema:
anyOf:
- type: integer
exclusiveMinimum: 0
- type: string
pattern: ^[1-9]\d*$
- in: query
name: q
schema:
type: string
description: Search available threads by name or description
- in: query
name: queryCol
schema:
enum:
- description
- name
- in: query
name: sourceThreadId
schema:
anyOf:
- type: string
description: Fixed source thread. Returns target threads available for linking.
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: Fixed source thread. Returns target threads available for linking.
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: Fixed source thread. Returns target threads available for linking.
format: uuid
format: uuid
description: Fixed source thread. Returns target threads available for linking.
- in: query
name: targetThreadId
schema:
anyOf:
- type: string
description: Fixed target thread. Returns source threads available for linking.
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: Fixed target thread. Returns source threads available for linking.
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: Fixed target thread. Returns source threads available for linking.
format: uuid
format: uuid
description: Fixed target thread. Returns source threads available for linking.
summary: List available threads for linking
tags:
- Thread Links
responses:
'200':
description: Available threads
content:
application/json:
schema:
$ref: '#/components/schemas/LinkAvailableThreadsResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/links/{link_id}:
delete:
operationId: thread_links.delete
parameters:
- in: path
name: link_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Unlink two threads
tags:
- Thread Links
responses:
'200':
description: Deleted link
content:
application/json:
schema:
type: object
properties:
createdAt:
type: string
direction:
enum:
- forward
- inverse
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
relId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
sourceThreadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
targetThreadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
threadLinkId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
required:
- createdAt
- direction
- metadata
- relId
- sourceThreadId
- targetThreadId
- threadLinkId
- updatedAt
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/imports/plan:
post:
operationId: imports.plan
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ImportRequest'
summary: Dry-run an Assembly Import Package into an Import Plan
tags:
- Threads
responses:
'200':
description: Import Plan
content:
application/json:
schema:
$ref: '#/components/schemas/ImportPlanResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/imports/commit:
post:
operationId: imports.commit
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ImportRequest'
summary: Commit an Assembly Import Package all-or-nothing
tags:
- Threads
responses:
'200':
description: Import result
content:
application/json:
schema:
$ref: '#/components/schemas/ImportCommitResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/relations/{relation_id}:
get:
operationId: relations.get
parameters:
- in: path
name: relation_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Get relation definition
tags:
- Thread Relations
responses:
'200':
description: Relation
content:
application/json:
schema:
type: object
properties:
archived:
type: boolean
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
forwardLabel:
type: string
inverseLabel:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
relId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
type: string
updatedAt:
type: string
required:
- archived
- createdAt
- description
- forwardLabel
- inverseLabel
- metadata
- name
- ownerId
- relId
- slug
- updatedAt
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
delete:
operationId: relations.delete
parameters:
- in: path
name: relation_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Delete relation definition
description: Remove a relation definition. This will also remove all links that reference this relation definition.
tags:
- Thread Relations
responses:
'200':
description: Deleted relation
content:
application/json:
schema:
type: object
properties:
archived:
type: boolean
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
forwardLabel:
type: string
inverseLabel:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
relId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
type: string
updatedAt:
type: string
required:
- archived
- createdAt
- description
- forwardLabel
- inverseLabel
- metadata
- name
- ownerId
- relId
- slug
- updatedAt
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
patch:
operationId: relations.update
parameters:
- in: path
name: relation_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
archived:
type: boolean
description:
type: string
forwardLabel:
type: string
inverseLabel:
type: string
name:
type: string
summary: Update relation definition
tags:
- Thread Relations
responses:
'200':
description: Updated relation
content:
application/json:
schema:
type: object
properties:
archived:
type: boolean
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
forwardLabel:
type: string
inverseLabel:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
relId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
type: string
updatedAt:
type: string
required:
- archived
- createdAt
- description
- forwardLabel
- inverseLabel
- metadata
- name
- ownerId
- relId
- slug
- updatedAt
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/relations:
get:
operationId: relations.list
parameters:
- in: query
name: archived
schema:
anyOf:
- const: 'false'
- const: 'true'
- type: boolean
- in: query
name: pageIndex
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: q
schema:
type: string
- in: query
name: threadId
schema:
anyOf:
- type: string
description: Scope relationship definitions to the owner of this thread
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: Scope relationship definitions to the owner of this thread
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: Scope relationship definitions to the owner of this thread
format: uuid
format: uuid
description: Scope relationship definitions to the owner of this thread
summary: List relation definitions
tags:
- Thread Relations
responses:
'200':
description: Relations
content:
application/json:
schema:
type: object
properties:
relations:
type: array
items:
type: object
properties:
archived:
type: boolean
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
forwardLabel:
type: string
inverseLabel:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
relId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
type: string
updatedAt:
type: string
required:
- archived
- createdAt
- description
- forwardLabel
- inverseLabel
- metadata
- name
- ownerId
- relId
- slug
- updatedAt
total:
type: number
required:
- relations
- total
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
post:
operationId: relations.create
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
forwardLabel:
type: string
inverseLabel:
type: string
name:
type: string
slug:
type: string
description:
type: string
required:
- forwardLabel
- inverseLabel
- name
- slug
summary: Create relation definition
tags:
- Thread Relations
responses:
'201':
description: Created relation
content:
application/json:
schema:
type: object
properties:
archived:
type: boolean
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
forwardLabel:
type: string
inverseLabel:
type: string
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
relId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
slug:
type: string
updatedAt:
type: string
required:
- archived
- createdAt
- description
- forwardLabel
- inverseLabel
- metadata
- name
- ownerId
- relId
- slug
- updatedAt
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/relations/count:
post:
operationId: relations.get_link_counts
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ids:
type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- ids
summary: Get relation link counts
description: Count the number of links that reference this relation definition.
tags:
- Thread Relations
responses:
'200':
description: Count results
content:
application/json:
schema:
type: object
description: A mapping of relation IDs to their respective link counts.
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/tags/extract:
post:
operationId: tags.extract
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
data:
anyOf:
- type: string
description: Image file or base64-encoded image data URL of the DUST tag.
pattern: ^data:image\/(png|jpeg);base64,[A-Za-z0-9+/]+={0,2}$
- description: Image file or base64-encoded image data URL of the DUST tag.
description: Image file or base64-encoded image data URL of the DUST tag.
options:
anyOf:
- type: string
description: In multipart submissions, provide a JSON string of [TagExtractRequestMetadata](#model/TagExtractRequestMetadata);
otherwise, a direct object is also accepted.
- $ref: '#/components/schemas/TagExtractRequestMetadata'
description: In multipart submissions, provide a JSON string of [TagExtractRequestMetadata](#model/TagExtractRequestMetadata);
otherwise, a direct object is also accepted.
required:
- data
summary: Extract a tag identifier.
description: Extract a tag identifier from an uploaded resource. This creates the tag and its identifier scan in the
system, but does not bind it to a thread
tags:
- Tags
responses:
'200':
description: The extracted identifier ID, and annotated image.
content:
application/json:
schema:
type: object
properties:
id:
type: string
qualityScore:
type: number
annotatedImage:
type: string
forensics:
anyOf:
- type: object
additionalProperties: {}
- type: 'null'
required:
- id
- qualityScore
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/tags/bind:
post:
operationId: tags.bind
requestBody:
required: true
content:
multipart/form-data:
schema:
anyOf:
- $ref: '#/components/schemas/BindTextTag'
- $ref: '#/components/schemas/BindDustImage'
- $ref: '#/components/schemas/BindDustFingerprint'
summary: Bind a tag identifier.
description: Bind a tag identifier to an existing thread.
tags:
- Tags
responses:
'200':
description: The extracted identifier ID, and annotated image.
content:
application/json:
schema:
type: object
properties:
tag:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagType:
type: string
threadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
value:
type: string
indexing:
anyOf:
- const: default
- const: none
- type: 'null'
isBound:
anyOf:
- type: boolean
- type: 'null'
required:
- archivedAt
- createdAt
- description
- isPrivate
- metadata
- name
- ownerId
- tagId
- tagType
- threadId
- transferId
- transferredAt
- updatedAt
- value
annotatedImageUrl:
type: string
required:
- tag
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/tags/verify:
post:
operationId: tags.verify
requestBody:
required: true
content:
multipart/form-data:
schema:
anyOf:
- type: object
description: Payload for verifying a tag against a specific thread and tag ID
properties:
data:
type: string
tagType:
enum:
- BAR_CODE
- DATA_MATRIX
- NFC
- QR
tags:
anyOf:
- type: string
description: In multipart submissions, provide a JSON string array of tags to verify against; otherwise,
a direct array is also accepted. If more than one tag is provided, verification will succeed if any
single tag matches the thread.
- $ref: '#/components/schemas/BulkVerifyTagList'
description: In multipart submissions, provide a JSON string array of tags to verify against; otherwise,
a direct array is also accepted. If more than one tag is provided, verification will succeed if any
single tag matches the thread.
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
options:
anyOf:
- type: string
description: In multipart submissions, provide a JSON string of [TagOptions](#model/TagOptions); otherwise,
a direct object is also accepted.
- $ref: '#/components/schemas/TagOptions'
required:
- data
- tagType
- tags
- threadId
- type: object
description: Payload for verifying a tag against a specific thread and tag ID
properties:
data:
anyOf:
- type: string
description: Image file or base64-encoded image data URL of the tag to be extracted and bound.
pattern: ^data:image\/(png|jpeg);base64,[A-Za-z0-9+/]+={0,2}$
- description: Image file or base64-encoded image data URL of the tag to be extracted and bound.
description: Image file or base64-encoded image data URL of the tag to be extracted and bound.
tagType:
const: DUST
tags:
anyOf:
- type: string
description: In multipart submissions, provide a JSON string array of tags to verify against; otherwise,
a direct array is also accepted. If more than one tag is provided, verification will succeed if any
single tag matches the thread.
- $ref: '#/components/schemas/BulkVerifyTagList'
description: In multipart submissions, provide a JSON string array of tags to verify against; otherwise,
a direct array is also accepted. If more than one tag is provided, verification will succeed if any
single tag matches the thread.
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
options:
anyOf:
- type: string
description: In multipart submissions, provide a JSON string of [DustTagOptions](#model/DustTagOptions);
otherwise, a direct object is also accepted.
- $ref: '#/components/schemas/DustTagOptions'
required:
- data
- tagType
- tags
- threadId
description: Payload for verifying a tag against a specific thread and tag ID
summary: Verify one or more tags
tags:
- Tags
responses:
'200':
description: Verification result.
content:
application/json:
schema:
anyOf:
- type: object
properties:
attemptedCount:
type: number
failedCount:
type: number
success:
type: boolean
error:
type: string
verifiedTag:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagType:
type: string
threadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
value:
type: string
indexing:
anyOf:
- const: default
- const: none
- type: 'null'
isBound:
anyOf:
- type: boolean
- type: 'null'
required:
- archivedAt
- createdAt
- description
- isPrivate
- metadata
- name
- ownerId
- tagId
- tagType
- threadId
- transferId
- transferredAt
- updatedAt
- value
required:
- attemptedCount
- failedCount
- success
- type: object
properties:
tag:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagType:
type: string
threadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
value:
type: string
indexing:
anyOf:
- const: default
- const: none
- type: 'null'
isBound:
anyOf:
- type: boolean
- type: 'null'
required:
- archivedAt
- createdAt
- description
- isPrivate
- metadata
- name
- ownerId
- tagId
- tagType
- threadId
- transferId
- transferredAt
- updatedAt
- value
required:
- tag
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/tags/identify:
post:
operationId: tags.identify
requestBody:
required: true
content:
multipart/form-data:
schema:
anyOf:
- $ref: '#/components/schemas/IdentifyTextTagPayload'
- $ref: '#/components/schemas/IdentifyDustPayload'
- $ref: '#/components/schemas/IdentifyTagIdOnlyPayload'
summary: Identify a thread
description: Identify a thread given an identifier scan
tags:
- Tags
responses:
'200':
description: The uploaded resource
content:
application/json:
schema:
anyOf:
- type: object
properties:
identified:
type: object
properties:
tag:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagType:
type: string
threadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
value:
type: string
indexing:
anyOf:
- const: default
- const: none
- type: 'null'
isBound:
anyOf:
- type: boolean
- type: 'null'
required:
- archivedAt
- createdAt
- description
- isPrivate
- metadata
- name
- ownerId
- tagId
- tagType
- threadId
- transferId
- transferredAt
- updatedAt
- value
thread:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
createdById:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
kind:
anyOf:
- type: string
- type: 'null'
labels:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
lifecycleStatus:
type: string
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
processingLockedAt:
anyOf:
- type: string
- type: 'null'
processingOperationId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
templateId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
thumbnailId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
required:
- archivedAt
- createdAt
- createdById
- description
- kind
- labels
- lifecycleStatus
- name
- ownerId
- processingLockedAt
- processingOperationId
- templateId
- threadId
- thumbnail
- thumbnailId
- transferId
- transferredAt
- updatedAt
required:
- tag
- thread
type:
const: identified
required:
- identified
- type
- type: object
properties:
matches:
type: array
items:
type: object
properties:
tag:
type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
isPrivate:
type: boolean
metadata:
anyOf:
- type: number
- type: object
- type: string
- type: boolean
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
tagType:
type: string
transferId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
transferredAt:
anyOf:
- type: string
- type: 'null'
updatedAt:
type: string
value:
type: string
indexing:
anyOf:
- const: default
- const: none
- type: 'null'
required:
- archivedAt
- createdAt
- description
- isPrivate
- metadata
- name
- ownerId
- tagId
- tagType
- transferId
- transferredAt
- updatedAt
- value
thread:
anyOf:
- type: object
properties:
archivedAt:
anyOf:
- type: string
- type: 'null'
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
name:
type: string
ownerId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
thumbnail: {}
required:
- archivedAt
- createdAt
- description
- name
- ownerId
- thumbnail
- type: 'null'
required:
- tag
- thread
type:
const: matches
required:
- matches
- type
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/tags/text:
post:
operationId: tags.set_text
summary: Set the text on a tag.
tags:
- Tags
responses:
'200':
description: The updated tag information
content:
application/json:
schema:
type: boolean
description: Whether the update was successful
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
requestBody:
required: true
content:
application/json:
schema:
type: object
description: Update tag name and/or description. The tag must be bound to the thread specified by threadId.
properties:
tagId:
anyOf:
- type: string
description: ID of the tag to set text for
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: ID of the tag to set text for
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: ID of the tag to set text for
format: uuid
description: ID of the tag to set text for
format: uuid
threadId:
anyOf:
- type: string
description: ID of the thread the tag is bound to
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: ID of the thread the tag is bound to
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: ID of the thread the tag is bound to
format: uuid
description: ID of the thread the tag is bound to
format: uuid
description:
anyOf:
- type: string
description: New description to set for the tag
- type: 'null'
description: New description to set for the tag
description: New description to set for the tag
name:
anyOf:
- type: string
description: New name to set for the tag
- type: 'null'
description: New name to set for the tag
description: New name to set for the tag
required:
- tagId
- threadId
/api/v1/tags/update:
post:
operationId: tags.update
summary: Update identifier lifecycle state.
description: Update an identifier's name, description, privacy, and archive state. Archiving hides the identifier from
default listings without deleting it; passing a null archivedAt restores it. The value and type are immutable.
tags:
- Tags
responses:
'200':
description: The updated identifier lifecycle state
content:
application/json:
schema:
$ref: '#/components/schemas/TagUpdateResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/TagUpdateRequest'
/api/v1/tags/unbind:
post:
operationId: tags.unbind
summary: Unbind a tag from a thread.
description: Unbind a tag from a thread. This does not delete the tag or its identifier scan, but simply removes the
association between the tag and the thread.
tags:
- Tags
responses:
'200':
description: Whether unbind was a success
content:
application/json:
schema:
type: boolean
description: Whether the unbind was successful
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'500':
description: Unknown error occurred
content:
application/json:
schema:
type: object
properties:
code:
const: UNKNOWN_ERROR
message:
type: string
status:
const: 500
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
tagId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- tagId
- threadId
/api/v1/transfers:
get:
operationId: transfer.list
parameters:
- in: query
name: box
schema:
enum:
- inbox
- outbox
- sent
- in: query
name: direction
schema:
enum:
- inbound
- outbound
- in: query
name: pageIndex
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: q
schema:
type: string
- in: query
name: status
schema:
enum:
- abandoned
- canceled
- change_request
- completed
- draft
- failed_retryable
- processing
- rejected
- sent
- in: query
name: view
schema:
enum:
- all
- completed
- draft
- in_progress
- received
summary: List transfers for the active team (status views or mail-box)
description: 'Listing of Transfer Fabric Operations. Preferred `view` semantics: `all` = every transfer the team is
party to; `draft` = the team''s editable shipments; `in_progress` = dispatched but unfinished, either direction; `completed`
= shipments the team sent that finished; `received` = shipments the team received that finished. Legacy mail-box `box`
(`inbox`/`outbox`/`sent`) still supported and takes precedence.'
tags:
- Transfers
responses:
'200':
description: Transfers
content:
application/json:
schema:
$ref: '#/components/schemas/TransferListResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
post:
operationId: transfer.create
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
minLength: 1
description:
type: string
required:
- name
summary: Create a draft Transfer
tags:
- Transfers
responses:
'200':
description: Created transfer
content:
application/json:
schema:
$ref: '#/components/schemas/TransferOperation'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/transfers/{transfer_id}:
get:
operationId: transfer.get
parameters:
- in: path
name: transfer_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Get a Transfer with its Fabric Manifest items
description: Visible to admins of the sending team and, once sent, admins of the receiving team.
tags:
- Transfers
responses:
'200':
description: Transfer detail
content:
application/json:
schema:
$ref: '#/components/schemas/TransferGetResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/transfers/{transfer_id}/preview:
get:
operationId: transfer.preview
parameters:
- in: path
name: transfer_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Authoritative Transfer Preview for a sent Transfer
description: 'The frozen `sent` manifest (ADR-0037) projected live as one preview per effective processing Thread: copied
Thread data plus the Fabric Disclosure that becomes visible on acceptance, with offered Assembly Part structure and
any Folder/Category placement. Available to admins of either party once the Transfer is `sent` (and while `processing`/`failed_retryable`);
not available while it is still editable (`draft`/`change_request`).'
tags:
- Transfers
responses:
'200':
description: Transfer preview
content:
application/json:
schema:
$ref: '#/components/schemas/TransferPreviewResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/transfers/{transfer_id}/preview/resources/{res_id}/content:
get:
operationId: transfer.preview_resource_content
parameters:
- in: path
name: res_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: path
name: transfer_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: query
name: download
schema:
type: string
summary: Offered Resource content for a Transfer Preview
description: A short-lived signed URL for the bytes of a Resource offered in the Transfer Preview. Authorizes by previewable
transfer + party admin + membership in the frozen `sent` manifest's selected source assets, not by recipient Thread
access (recipient Threads do not exist before acceptance). `?download=1` requests attachment disposition.
tags:
- Transfers
responses:
'200':
description: Offered resource content URL
content:
application/json:
schema:
$ref: '#/components/schemas/TransferPreviewResourceContentResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/transfers/{transfer_id}/preview/graph:
get:
operationId: transfer.preview_graph
parameters:
- in: path
name: transfer_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: query
name: sourceThreadId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
description: a UUID
summary: Pre-acceptance provenance graph for a sent Transfer
description: 'The frozen `sent` manifest projected live into the Fabric Graph shape (receiver preview provenance, extends
ADR-0037): BOM-scoped nodes (the offered Threads, with Assembly structure on `parentAssembly`/`kind`) plus one incoming-transfer
receipt per Thread. Redacted to the offered/disclosed set. Available to admins of either party once `sent` (and while
`processing`/`failed_retryable`).'
tags:
- Transfers
responses:
'200':
description: Preview provenance graph
content:
application/json:
schema:
$ref: '#/components/schemas/FabricGraphResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/transfers/{transfer_id}/preview/threads/{source_thread_id}/events:
get:
operationId: transfer.preview_thread_events
parameters:
- in: path
name: source_thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: path
name: transfer_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: query
name: excludeActionFilter
schema:
type: string
summary: Disclosed transaction history for an offered Thread
description: The disclosed event history for one offered Thread in the frozen `sent` manifest, projected live and scoped
to the offered/disclosed asset set and the offered BOM — mirroring exactly what acceptance would fix as event-disclosure.
NOT_FOUND when the Thread is not part of the preview.
tags:
- Transfers
responses:
'200':
description: Disclosed thread history
content:
application/json:
schema:
$ref: '#/components/schemas/TransferPreviewThreadEventsResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/transfers/{transfer_id}/send:
post:
operationId: transfer.send
parameters:
- in: path
name: transfer_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
toId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
required:
- toId
summary: Send a draft Transfer to a receiving team
description: Sets the target team and moves the transfer to `sent`. Transfers are cross-organization only; the receiving
team must respond before anything is processed.
tags:
- Transfers
responses:
'200':
description: Sent
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/transfers/{transfer_id}/respond:
post:
operationId: transfer.finalize
parameters:
- in: path
name: transfer_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
anyOf:
- type: object
properties:
reason:
type: string
minLength: 1
value:
const: request_changes
required:
- reason
- value
- type: object
properties:
value:
enum:
- accept
- reject
reason:
type: string
required:
- value
summary: Respond to a received Transfer (accept / reject / request changes)
description: Receiving-team response. `accept` starts processing immediately and cannot be undone; `request_changes`
returns the transfer to the sender for editing.
tags:
- Transfers
responses:
'200':
description: Responded
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/transfers/{transfer_id}/messages:
post:
operationId: transfer.post_message
parameters:
- in: path
name: transfer_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PostTransferMessageRequest'
summary: Post a message on a Transfer's conversation
description: Either party (sending or receiving team) can post a free-form message on the shipment. Messages are recorded
in the same append-only history as change-request / reject / accept notes, but carry no state transition.
tags:
- Transfers
responses:
'200':
description: Message posted
content:
application/json:
schema:
type: boolean
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/transfers/{transfer_id}/cancel:
post:
operationId: transfer.cancel
parameters:
- in: path
name: transfer_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
reason:
type: string
summary: Cancel a draft, sent, or change-requested Transfer
description: Cancels a shipment the sending team still owns (`draft`/`sent`/`change_request`), releasing any source-thread
freeze. An optional reason is recorded in the shipment's negotiation log. Admin of the source team.
tags:
- Transfers
responses:
'200':
description: Canceled
content:
application/json:
schema:
type: boolean
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/transfers/{transfer_id}/retry:
post:
operationId: transfer.retry
parameters:
- in: path
name: transfer_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Retry a failed Transfer
description: Re-enqueues processing for a `failed_retryable` transfer. Processing is idempotent (pre-allocated Fabric
Links, deterministic resource keys). Admin of either party team.
tags:
- Transfers
responses:
'200':
description: Retrying
content:
application/json:
schema:
type: boolean
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/transfers/{transfer_id}/abandon:
post:
operationId: transfer.abandon
parameters:
- in: path
name: transfer_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
reason:
type: string
minLength: 1
required:
- reason
summary: Abandon a failed Transfer
description: Gives up on a `failed_retryable` transfer, moving it to `abandoned` and releasing the source-thread processing
locks so those threads can be re-transferred. Admin of either party team.
tags:
- Transfers
responses:
'200':
description: Abandoned
content:
application/json:
schema:
type: boolean
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/transfers/{transfer_id}/start-from-prior-manifest:
post:
operationId: transfer.start_from_prior_manifest
parameters:
- in: path
name: transfer_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
note:
type: string
summary: Start a new shipment from a stopped shipment's manifest
description: Reuses a stopped shipment's selected manifest intent to start a fresh editable `draft` owned by the source
team, so it can be adjusted and sent through the normal review path (e.g. after a rejection, cancellation, abandonment,
or failed processing). This does not duplicate Thread data, create recipient Threads, or change the historical shipment;
it records the old/new shipment linkage and an optional note. Fails if a source thread is no longer available to transfer.
Admin of the source team.
tags:
- Transfers
responses:
'200':
description: New shipment draft
content:
application/json:
schema:
$ref: '#/components/schemas/TransferOperation'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/transfers/{transfer_id}/items:
post:
operationId: transfer.add_item
parameters:
- in: path
name: transfer_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
anyOf:
- type: object
properties:
kind:
type: string
name:
type: string
source:
anyOf:
- type: object
properties:
bundleId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: bundle
recurse:
type: boolean
required:
- bundleId
- type
- type: object
properties:
threadIds:
type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: threads
required:
- threadIds
- type
description:
anyOf:
- type: string
- type: 'null'
required:
- kind
- name
- source
- type: object
properties:
kind:
const: assembly
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
fields:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
partThreadIds:
anyOf:
- type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- type: 'null'
parts:
type: array
items:
type: object
properties:
partThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
fields:
anyOf:
- type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- type: 'null'
resources:
anyOf:
- type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- type: 'null'
tags:
anyOf:
- type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- type: 'null'
required:
- partThreadId
resources:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
tags:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
required:
- kind
- threadId
- type: object
properties:
kind:
const: unit
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
description:
anyOf:
- type: string
- type: 'null'
fields:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
resources:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
tags:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
required:
- kind
- threadId
summary: Add a Manifest Item to a draft Transfer
description: Adds a unit/assembly thread item or a folder/category collection item. Private fields, resources, and tags
are filtered out automatically and can never be included.
tags:
- Transfers
responses:
'200':
description: Created manifest item
content:
application/json:
schema:
anyOf:
- type: object
properties:
createdAt:
type: string
data:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
excludedPartCount:
anyOf:
- type: integer
maximum: 2147483647
minimum: -2147483648
- type: 'null'
fields:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
const: assembly
name:
anyOf:
- type: string
- type: 'null'
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
parentAssemblyThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
relation:
anyOf:
- type: string
- type: 'null'
resources:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
tags:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
required:
- createdAt
- description
- excludedPartCount
- fields
- kind
- name
- operationId
- parentAssemblyThreadId
- relation
- resources
- tags
- threadId
- updatedAt
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
intent:
const: assembly
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
rootManifestThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
required:
- createdAt
- data
- id
- intent
- operationId
- rootManifestThreadId
- updatedAt
- type: object
properties:
createdAt:
type: string
data:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
excludedPartCount:
anyOf:
- type: integer
maximum: 2147483647
minimum: -2147483648
- type: 'null'
fields:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
const: unit
name:
anyOf:
- type: string
- type: 'null'
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
parentAssemblyThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
relation:
anyOf:
- type: string
- type: 'null'
resources:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
tags:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
required:
- createdAt
- description
- excludedPartCount
- fields
- kind
- name
- operationId
- parentAssemblyThreadId
- relation
- resources
- tags
- threadId
- updatedAt
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
intent:
const: unit
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
rootManifestThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
required:
- createdAt
- data
- id
- intent
- operationId
- rootManifestThreadId
- updatedAt
- type: object
properties:
createdAt:
type: string
data:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
itemIds:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
const: category
name:
type: string
updatedAt:
type: string
required:
- createdAt
- description
- itemIds
- kind
- name
- updatedAt
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
intent:
const: category
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
rootManifestThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
required:
- createdAt
- data
- id
- intent
- operationId
- rootManifestThreadId
- updatedAt
- type: object
properties:
createdAt:
type: string
data:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
itemIds:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
const: folder
name:
type: string
updatedAt:
type: string
required:
- createdAt
- description
- itemIds
- kind
- name
- updatedAt
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
intent:
const: folder
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
rootManifestThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
required:
- createdAt
- data
- id
- intent
- operationId
- rootManifestThreadId
- updatedAt
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/transfers/{transfer_id}/items/{item_id}:
patch:
operationId: transfer.update_item
parameters:
- in: path
name: item_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: path
name: transfer_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
anyOf:
- type: object
properties:
description:
anyOf:
- type: string
- type: 'null'
itemIds:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
type: string
name:
type: string
source:
anyOf:
- type: object
properties:
bundleId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
mode:
const: append
type:
const: bundle
recurse:
type: boolean
required:
- bundleId
- mode
- type
- type: object
properties:
mode:
const: append
threadIds:
type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: threads
required:
- mode
- threadIds
- type
- type: object
properties:
description:
anyOf:
- type: string
- type: 'null'
itemIds:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
type: string
name:
type: string
source:
anyOf:
- type: object
properties:
bundleId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
mode:
const: write
type:
const: bundle
recurse:
type: boolean
required:
- bundleId
- mode
- type
- type: object
properties:
mode:
const: write
threadIds:
type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
type:
const: threads
required:
- mode
- threadIds
- type
- type: object
properties:
kind:
const: assembly
description:
anyOf:
- type: string
- type: 'null'
fields:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
partThreadIds:
anyOf:
- type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- type: 'null'
parts:
type: array
items:
type: object
properties:
partThreadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
fields:
anyOf:
- type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- type: 'null'
resources:
anyOf:
- type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- type: 'null'
tags:
anyOf:
- type: array
items:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
description: a UUID
format: uuid
- type: 'null'
required:
- partThreadId
resources:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
tags:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
required:
- kind
- type: object
properties:
kind:
const: unit
description:
anyOf:
- type: string
- type: 'null'
fields:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
name:
anyOf:
- type: string
- type: 'null'
resources:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
tags:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
required:
- kind
summary: Update a Manifest Item on a draft Transfer
description: Overwrites the item's selection. The intent/kind cannot change; remove and re-add instead.
tags:
- Transfers
responses:
'200':
description: Updated manifest item
content:
application/json:
schema:
anyOf:
- type: object
properties:
createdAt:
type: string
data:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
excludedPartCount:
anyOf:
- type: integer
maximum: 2147483647
minimum: -2147483648
- type: 'null'
fields:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
const: assembly
name:
anyOf:
- type: string
- type: 'null'
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
parentAssemblyThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
relation:
anyOf:
- type: string
- type: 'null'
resources:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
tags:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
required:
- createdAt
- description
- excludedPartCount
- fields
- kind
- name
- operationId
- parentAssemblyThreadId
- relation
- resources
- tags
- threadId
- updatedAt
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
intent:
const: assembly
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
rootManifestThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
required:
- createdAt
- data
- id
- intent
- operationId
- rootManifestThreadId
- updatedAt
- type: object
properties:
createdAt:
type: string
data:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
excludedPartCount:
anyOf:
- type: integer
maximum: 2147483647
minimum: -2147483648
- type: 'null'
fields:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
const: unit
name:
anyOf:
- type: string
- type: 'null'
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
parentAssemblyThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
relation:
anyOf:
- type: string
- type: 'null'
resources:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
tags:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
required:
- createdAt
- description
- excludedPartCount
- fields
- kind
- name
- operationId
- parentAssemblyThreadId
- relation
- resources
- tags
- threadId
- updatedAt
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
intent:
const: unit
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
rootManifestThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
required:
- createdAt
- data
- id
- intent
- operationId
- rootManifestThreadId
- updatedAt
- type: object
properties:
createdAt:
type: string
data:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
itemIds:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
const: category
name:
type: string
updatedAt:
type: string
required:
- createdAt
- description
- itemIds
- kind
- name
- updatedAt
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
intent:
const: category
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
rootManifestThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
required:
- createdAt
- data
- id
- intent
- operationId
- rootManifestThreadId
- updatedAt
- type: object
properties:
createdAt:
type: string
data:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
itemIds:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
const: folder
name:
type: string
updatedAt:
type: string
required:
- createdAt
- description
- itemIds
- kind
- name
- updatedAt
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
intent:
const: folder
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
rootManifestThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
required:
- createdAt
- data
- id
- intent
- operationId
- rootManifestThreadId
- updatedAt
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
delete:
operationId: transfer.remove_item
parameters:
- in: path
name: item_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: path
name: transfer_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Remove a Manifest Item from a draft Transfer
tags:
- Transfers
responses:
'200':
description: Removed manifest item
content:
application/json:
schema:
anyOf:
- type: object
properties:
createdAt:
type: string
data:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
excludedPartCount:
anyOf:
- type: integer
maximum: 2147483647
minimum: -2147483648
- type: 'null'
fields:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
const: assembly
name:
anyOf:
- type: string
- type: 'null'
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
parentAssemblyThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
relation:
anyOf:
- type: string
- type: 'null'
resources:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
tags:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
required:
- createdAt
- description
- excludedPartCount
- fields
- kind
- name
- operationId
- parentAssemblyThreadId
- relation
- resources
- tags
- threadId
- updatedAt
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
intent:
const: assembly
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
rootManifestThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
required:
- createdAt
- data
- id
- intent
- operationId
- rootManifestThreadId
- updatedAt
- type: object
properties:
createdAt:
type: string
data:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
excludedPartCount:
anyOf:
- type: integer
maximum: 2147483647
minimum: -2147483648
- type: 'null'
fields:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
const: unit
name:
anyOf:
- type: string
- type: 'null'
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
parentAssemblyThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
relation:
anyOf:
- type: string
- type: 'null'
resources:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
tags:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
threadId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
updatedAt:
type: string
required:
- createdAt
- description
- excludedPartCount
- fields
- kind
- name
- operationId
- parentAssemblyThreadId
- relation
- resources
- tags
- threadId
- updatedAt
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
intent:
const: unit
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
rootManifestThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
required:
- createdAt
- data
- id
- intent
- operationId
- rootManifestThreadId
- updatedAt
- type: object
properties:
createdAt:
type: string
data:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
itemIds:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
const: category
name:
type: string
updatedAt:
type: string
required:
- createdAt
- description
- itemIds
- kind
- name
- updatedAt
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
intent:
const: category
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
rootManifestThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
required:
- createdAt
- data
- id
- intent
- operationId
- rootManifestThreadId
- updatedAt
- type: object
properties:
createdAt:
type: string
data:
type: object
properties:
createdAt:
type: string
description:
anyOf:
- type: string
- type: 'null'
itemIds:
anyOf:
- type: array
items:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
kind:
const: folder
name:
type: string
updatedAt:
type: string
required:
- createdAt
- description
- itemIds
- kind
- name
- updatedAt
id:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
intent:
const: folder
operationId:
type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
rootManifestThreadId:
anyOf:
- type: string
description: a RFC-4122-compliant UUID
pattern: ^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$
- type: 'null'
updatedAt:
type: string
required:
- createdAt
- data
- id
- intent
- operationId
- rootManifestThreadId
- updatedAt
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/transfers/{transfer_id}/primary-thread:
put:
operationId: transfer.set_primary_thread
parameters:
- in: path
name: transfer_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
threadId:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
- type: 'null'
required:
- threadId
summary: Set the primary Thread of a draft Transfer
tags:
- Transfers
responses:
'200':
description: Updated transfer
content:
application/json:
schema:
$ref: '#/components/schemas/TransferOperation'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/slices:
post:
operationId: slice.create
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateSliceRequest'
summary: Slice a thread (same-team derivation)
description: 'Derives a new team-owned thread from a source thread, creating a Fabric Link and fixing the initial Fabric
Disclosure. The source thread is unaffected and can be sliced repeatedly. Omitted asset selections default to all
non-private assets; explicit private selections fail; DUST identifiers never travel. Link-only slices copy nothing.
Source thumbnails are copied by default and can be omitted with `copyThumbnail: false`.'
tags:
- Slices
responses:
'200':
description: Completed slice
content:
application/json:
schema:
$ref: '#/components/schemas/SliceCreateResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/slices/batch:
post:
operationId: slice.create_many
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateManySliceRequest'
summary: Slice a thread into many derived threads in one operation
description: 'Creates every target slice of the source in a single transaction (far faster than one request per slice,
and the only safe way to slice the same source repeatedly). Each target carries its own name/description and field
values (existing fields are overridden by name; unmatched names create new fields). `sourceFields` updates the source
thread once — e.g. decrementing a bar''s remaining length as rods are sliced off. Source thumbnails are copied by
default and can be omitted with `copyThumbnail: false`.'
tags:
- Slices
responses:
'200':
description: Completed slices
content:
application/json:
schema:
$ref: '#/components/schemas/SliceCreateManyResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/slices/{slice_id}:
get:
operationId: slice.get
parameters:
- in: path
name: slice_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Get a Slice with its Fabric Links
tags:
- Slices
responses:
'200':
description: Slice detail
content:
application/json:
schema:
$ref: '#/components/schemas/SliceGetResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/threads/{thread_id}/graph:
get:
operationId: fabric.graph
parameters:
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Visible Fabric Graph for a thread
description: Visible structural lineage for the thread. Downstream consumers see chain-wide upstream lineage (ADR-0024);
source-side transferors receive receipt rows for outgoing transfers instead of recipient thread identity or downstream
chain details (ADR-0027). Disclosed data is read per link via the link context endpoint.
tags:
- Fabric
responses:
'200':
description: Fabric graph
content:
application/json:
schema:
$ref: '#/components/schemas/FabricGraphResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/threads/{thread_id}/versions:
get:
operationId: fabric.thread_versions
parameters:
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Fabric Thread Versions for a thread
description: The thread as disclosed through each Fabric Link it sources, one version per link (never merged). Readable
chain-wide (ADR-0024) by any consumer of a link, even without live thread access; liveThreadAccess reports live can_view
separately.
tags:
- Fabric
responses:
'200':
description: Fabric thread versions
content:
application/json:
schema:
$ref: '#/components/schemas/FabricThreadVersionsResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/links/{link_id}/context:
get:
operationId: fabric.link_context
parameters:
- in: path
name: link_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Current disclosed data for a Fabric Link
description: The link's current Fabric Disclosure (included assets with snapshots; redacted/removed markers without
data), readable by downstream consumers (ADR-0024). Source transferors use disclosure-management endpoints and do
not receive recipient thread identity through this read.
tags:
- Fabric
responses:
'200':
description: Link context
content:
application/json:
schema:
$ref: '#/components/schemas/FabricLinkContextResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/threads/{thread_id}/disclosure/push/context:
get:
operationId: fabric.source_thread_context
parameters:
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Source-side context for a Fabric disclosure push
description: Current disclosure rows and event cursor for a source Thread, readable only by the owning (source) team.
Disclosure is source-Thread scoped (ADR-0032); the payload intentionally excludes downstream target thread identity,
link ids, and chain shape.
tags:
- Fabric
responses:
'200':
description: Source thread context
content:
application/json:
schema:
$ref: '#/components/schemas/FabricSourceThreadContextResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/links/{link_id}/resources/{res_id}/content:
get:
operationId: fabric.link_resource_content
parameters:
- in: path
name: link_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: path
name: res_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: query
name: download
schema:
type: string
summary: Disclosed resource content for a Fabric Link
description: A short-lived signed URL for the bytes of a resource disclosed through the Fabric Link, readable by downstream
consumers (ADR-0024). Returns a redaction-gated signed URL (no tuples written), mirroring the files download architecture;
`?download=1` requests attachment disposition.
tags:
- Fabric
responses:
'200':
description: Disclosed resource content URL
content:
application/json:
schema:
$ref: '#/components/schemas/FabricLinkResourceContentResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/links/{link_id}/events:
get:
operationId: fabric.link_events
parameters:
- in: path
name: link_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: query
name: excludeActionFilter
schema:
type: string
- in: query
name: groupBy
schema:
const: activity
- in: query
name: pageIndex
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: pageSize
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: targetId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
description: a UUID
- in: query
name: targetKind
schema:
enum:
- field
- resource
- tag
summary: Fabric Event Views for a Fabric Link
description: Source-thread and disclosed-asset events up to the link's event cursor, ordered by occurred time then event
id. Events touching undisclosed targets carry redaction markers and no payload.
tags:
- Fabric
responses:
'200':
description: Fabric event views (Activity Groups when grouped).
content:
application/json:
schema:
$ref: '#/components/schemas/FabricLinkEventsResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/links/{link_id}/timeline:
get:
operationId: fabric.link_timeline
parameters:
- in: path
name: link_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Disclosure revision timeline for a Fabric Link
tags:
- Fabric
responses:
'200':
description: Link timeline
content:
application/json:
schema:
$ref: '#/components/schemas/FabricLinkTimelineResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/links/{link_id}/assembly:
get:
operationId: fabric.link_assembly
parameters:
- in: path
name: link_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Frozen Assembly Parts for a Fabric Link version
description: The operation's frozen selected Parts scoped under the version's Assembly Thread (the link's source Thread),
read from the Fabric Manifest Thread rows (ADR-0028). Readable by the source owner (audit) and chain consumers (ADR-0024);
carries source-side structure only, never downstream target thread identity. Excluded Parts are silently omitted.
tags:
- Fabric
responses:
'200':
description: Frozen assembly parts
content:
application/json:
schema:
$ref: '#/components/schemas/FabricLinkAssemblyResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/threads/{thread_id}/disclosure/preview:
post:
operationId: fabric.preview_disclosure_change
parameters:
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/FabricDisclosurePreviewRequest'
summary: Preview a disclosure revision or redaction
description: Pure read preview of a source-Thread disclosure revision or redaction (ADR-0032). Fan-out is chain-wide
under ADR-0024, but the source-side preview only confirms the change is visible through the fabric chain — it never
reveals downstream chain size, link ids, or participant identities.
tags:
- Fabric
responses:
'200':
description: Disclosure change preview
content:
application/json:
schema:
$ref: '#/components/schemas/FabricDisclosurePreviewResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/threads/{thread_id}/disclosure/revise:
post:
operationId: fabric.revise_disclosure
parameters:
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/FabricDisclosureChangeRequest'
summary: Revise Fabric Disclosure
description: Includes newly disclosed assets or refreshes snapshots for already-included assets on a source Thread.
Revisions require a source-side reason and notify the whole downstream chain.
tags:
- Fabric
responses:
'200':
description: Disclosure revision
content:
application/json:
schema:
$ref: '#/components/schemas/FabricRevisionMutationResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/threads/{thread_id}/disclosure/redact:
post:
operationId: fabric.redact_disclosure
parameters:
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/FabricDisclosureChangeRequest'
summary: Redact disclosed Fabric assets
description: Explicit audited redaction removes already-disclosed assets of a source Thread from future fabric views
without deleting historical revision records.
tags:
- Fabric
responses:
'200':
description: Disclosure redaction
content:
application/json:
schema:
$ref: '#/components/schemas/FabricRevisionMutationResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/threads/{thread_id}/cursor/preview:
post:
operationId: fabric.preview_cursor_advance
parameters:
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/FabricCursorPreviewRequest'
summary: Preview Fabric event cursor advancement
tags:
- Fabric
responses:
'200':
description: Cursor advancement preview
content:
application/json:
schema:
$ref: '#/components/schemas/FabricCursorPreviewResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/threads/{thread_id}/cursor/advance:
post:
operationId: fabric.advance_cursor
parameters:
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/FabricCursorAdvanceRequest'
summary: Advance Fabric event cursor
description: Moves the source Thread's occurred-time event cursor forward and refreshes included asset snapshots for
the new boundary.
tags:
- Fabric
responses:
'200':
description: Advanced cursor revision
content:
application/json:
schema:
$ref: '#/components/schemas/FabricRevisionMutationResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/threads/{thread_id}/disclosure/push/preview:
post:
operationId: fabric.preview_disclosure_push
parameters:
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/FabricDisclosurePushPreviewRequest'
summary: Preview a Disclosure Push
description: 'Pure read preview of a source-Thread Disclosure Push (ADR-0026, ADR-0032): per-asset eligibility/disposition
for the selected assets, the Fabric Event Views that the push-time cursor would reveal, and a privacy-safe chain-visibility
marker. Never reveals downstream chain size, link ids, or participant identities.'
tags:
- Fabric
responses:
'200':
description: Disclosure push preview
content:
application/json:
schema:
$ref: '#/components/schemas/FabricDisclosurePushPreviewResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/threads/{thread_id}/disclosure/push:
post:
operationId: fabric.disclosure_push
parameters:
- in: path
name: thread_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/FabricDisclosurePushRequest'
summary: Disclosure Push
description: 'One reviewed source-side act (ADR-0026, ADR-0032): revises the selected eligible disclosed assets and
advances the source Thread''s event cursor to the push time in one transaction, recorded as one `push` revision and
read through every outgoing Fabric Link from the Thread. Requires a reason. Notifies downstream asset-level for the
selected assets only; a cursor-only push notifies no one. Newly visible events are informational and create no per-event
adoption decisions.'
tags:
- Fabric
responses:
'200':
description: Disclosure push
content:
application/json:
schema:
$ref: '#/components/schemas/FabricDisclosurePushResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/notifications:
get:
operationId: fabric.list_notifications
parameters:
- in: query
name: limit
schema:
anyOf:
- type: number
- type: string
pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
- in: query
name: status
schema:
enum:
- dismissed
- pending
- resolved
summary: List Fabric notifications for the downstream owner
tags:
- Fabric
responses:
'200':
description: Fabric notifications
content:
application/json:
schema:
$ref: '#/components/schemas/FabricNotificationsResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/notifications/dismiss:
post:
operationId: fabric.dismiss_notifications
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/DismissFabricNotificationsRequest'
summary: Dismiss pending Fabric notifications for the given threads
description: Clears the downstream reminder for the acting team's selected destination threads (sets pending notifications
to dismissed). Records no adoption decision and never mutates thread data — the underlying disclosures stay reviewable
in the Fabric Explorer.
tags:
- Fabric
responses:
'200':
description: Dismissed notification count
content:
application/json:
schema:
$ref: '#/components/schemas/DismissFabricNotificationsResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/notifications/{notification_id}/preview:
post:
operationId: fabric.preview_notification_decision
parameters:
- in: path
name: notification_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Preview accepting a Fabric notification
tags:
- Fabric
responses:
'200':
description: Fabric decision preview
content:
application/json:
schema:
$ref: '#/components/schemas/FabricDecisionPreviewResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/notifications/{notification_id}/accept:
post:
operationId: fabric.accept_notification
parameters:
- in: path
name: notification_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AcceptFabricNotificationRequest'
summary: Accept a Fabric notification
description: Records a target-side Fabric Decision and applies the upstream disclosed change to the mapped active target
asset when there is no conflict.
tags:
- Fabric
responses:
'200':
description: Fabric decision
content:
application/json:
schema:
$ref: '#/components/schemas/FabricDecisionResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/notifications/{notification_id}/reject:
post:
operationId: fabric.reject_notification
parameters:
- in: path
name: notification_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RejectFabricNotificationRequest'
summary: Reject a Fabric notification
description: Records a provenance-only target-side Fabric Decision with the required rejection reason. Rejection does
not hide upstream fabric visibility.
tags:
- Fabric
responses:
'200':
description: Fabric decision
content:
application/json:
schema:
$ref: '#/components/schemas/FabricDecisionResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/links/{consumer_link_id}/disclosure/sources/{source_link_id}/sync:
get:
operationId: fabric.preview_link_disclosure_sync
parameters:
- in: path
name: consumer_link_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: path
name: source_link_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
summary: Review a source link's disclosed state for adoption
description: 'Read-only Disclosure Sync (ADR-0036): the selected upstream source link''s currently-included disclosure
datums, binned for the destination''s consumer link (adopt-new / update / in-sync / needs-review / certificate review
/ skipped / hidden). View/team-level access; mutating decisions require edit access on the destination thread.'
tags:
- Fabric
responses:
'200':
description: Disclosure sync rows
content:
application/json:
schema:
$ref: '#/components/schemas/FabricLinkSyncResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/links/{consumer_link_id}/disclosure/sources/{source_link_id}/sync/adopt:
post:
operationId: fabric.adopt_disclosed_asset
parameters:
- in: path
name: consumer_link_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: path
name: source_link_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AdoptDisclosedAssetRequest'
summary: Adopt a disclosed datum into the destination thread
description: Records an accepted Fabric Decision and applies the upstream disclosed datum (adopt-new for a direct consumer,
or update a mapped asset). A disclosed certificate is acknowledged only. Requires edit access on the destination thread.
tags:
- Fabric
responses:
'200':
description: Fabric decision
content:
application/json:
schema:
$ref: '#/components/schemas/FabricDecisionResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/links/{consumer_link_id}/disclosure/sources/{source_link_id}/sync/decline:
post:
operationId: fabric.decline_disclosed_asset
parameters:
- in: path
name: consumer_link_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: path
name: source_link_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/DeclineDisclosedAssetRequest'
summary: Decline (skip) a disclosed datum
description: Records a provenance-only rejected Fabric Decision (the destination skips the disclosed datum). The optional
note defaults to system text. Declining never hides upstream fabric visibility. Requires edit access on the destination
thread.
tags:
- Fabric
responses:
'200':
description: Fabric decision
content:
application/json:
schema:
$ref: '#/components/schemas/FabricDecisionResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/links/{consumer_link_id}/disclosure/sources/{source_link_id}/sync/hide-local-copy:
post:
operationId: fabric.hide_disclosed_asset_local_copy
parameters:
- in: path
name: consumer_link_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: path
name: source_link_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/HideDisclosedAssetLocalCopyRequest'
summary: Hide the local copy of a withdrawn disclosed datum
description: 'For an upstream redacted/removed disclosure with a mapped local copy: makes the local Field/Resource/Identifier
private and archived (reversible). Flags when the local copy was disclosed onward and still needs outgoing redaction.
Requires edit access on the destination thread.'
tags:
- Fabric
responses:
'200':
description: Fabric decision
content:
application/json:
schema:
$ref: '#/components/schemas/FabricDecisionResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/fabric/links/{consumer_link_id}/disclosure/sources/{source_link_id}/sync/adopt-batch:
post:
operationId: fabric.adopt_disclosed_assets
parameters:
- in: path
name: consumer_link_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: path
name: source_link_id
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AdoptDisclosedAssetsRequest'
summary: Adopt several disclosed datums atomically
description: 'Atomic batch adopt (ADR-0036): all supplied datums are adopted in one transaction; any conflict rolls
back the whole batch. Callers pass only eligible add/update datums. Requires edit access on the destination thread.'
tags:
- Fabric
responses:
'200':
description: Batch fabric decisions
content:
application/json:
schema:
$ref: '#/components/schemas/FabricAdoptBatchResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/certificate-forms:
post:
operationId: certificate_forms.create
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CertificateFormCreateRequest'
summary: Create a Certificate Form.
description: Create a reusable, team-owned Certificate Form. Requires team admin.
tags:
- Certificate Forms
responses:
'200':
description: The created Certificate Form.
content:
application/json:
schema:
$ref: '#/components/schemas/CertificateFormResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Feature is currently disabled
content:
application/json:
schema:
type: object
properties:
code:
const: FEATURE_DISABLED
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
get:
operationId: certificate_forms.list
parameters:
- in: query
name: includeArchived
schema:
anyOf:
- enum:
- 'false'
- 'true'
- type: boolean
- in: query
name: status
schema:
enum:
- active
- archived
summary: List Certificate Forms.
description: List the active team's Certificate Forms (active-only by default).
tags:
- Certificate Forms
responses:
'200':
description: Certificate Forms.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/CertificateFormResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Feature is currently disabled
content:
application/json:
schema:
type: object
properties:
code:
const: FEATURE_DISABLED
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/certificate-forms/{formId}:
get:
operationId: certificate_forms.get
summary: Get a Certificate Form.
tags:
- Certificate Forms
responses:
'200':
description: The Certificate Form.
content:
application/json:
schema:
$ref: '#/components/schemas/CertificateFormResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Feature is currently disabled
content:
application/json:
schema:
type: object
properties:
code:
const: FEATURE_DISABLED
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- schema:
type: string
in: path
name: formId
required: true
patch:
operationId: certificate_forms.update
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CertificateFormUpdateRequest'
summary: Update a Certificate Form.
description: Update a Certificate Form (team admin). Forms are always editable; status is visibility only.
tags:
- Certificate Forms
responses:
'200':
description: The updated Certificate Form.
content:
application/json:
schema:
$ref: '#/components/schemas/CertificateFormResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Feature is currently disabled
content:
application/json:
schema:
type: object
properties:
code:
const: FEATURE_DISABLED
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- schema:
type: string
in: path
name: formId
required: true
/api/v1/certificates/preflight:
post:
operationId: certificates.preflight
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CertificatePreflightRequest'
summary: Preflight a Certificate Form against a Thread.
description: 'Read-only compliance check: which bindings resolve against this Thread.'
tags:
- Certificates
responses:
'200':
description: Preflight result.
content:
application/json:
schema:
$ref: '#/components/schemas/CertificatePreflightResult'
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Feature is currently disabled
content:
application/json:
schema:
type: object
properties:
code:
const: FEATURE_DISABLED
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/certificates/preflight/batch:
post:
operationId: certificates.preflight_batch
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CertificatePreflightBatchRequest'
summary: Batch preflight (read-only) for the Dice batch workflow.
description: Per-Thread compliance for up to 100 Threads. This is a READ, not bulk issuance.
tags:
- Certificates
responses:
'200':
description: Per-Thread preflight results.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/CertificatePreflightResult'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Feature is currently disabled
content:
application/json:
schema:
type: object
properties:
code:
const: FEATURE_DISABLED
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/certificates/preview-form:
post:
operationId: certificates.preview_form
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CertificatePreviewFormRequest'
summary: Render a Certificate Form preview with placeholder data.
description: Server-side render of a (possibly unsaved) design with sample values; returns the PDF as base64.
tags:
- Certificates
responses:
'200':
description: Base64-encoded preview PDF.
content:
application/json:
schema:
$ref: '#/components/schemas/CertificatePreviewFormResponse'
'400':
description: Invalid data provided
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_DATA
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Feature is currently disabled
content:
application/json:
schema:
type: object
properties:
code:
const: FEATURE_DISABLED
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/certificates/preview-form-thread:
post:
operationId: certificates.preview_form_for_thread
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CertificatePreviewFormForThreadRequest'
summary: Render a Certificate Form preview resolved against a Thread.
description: Server-side render of a (possibly unsaved) design with values resolved against a Thread (same resolution
as issuance preflight); returns the PDF as base64 plus the preflight gap list. Requires can_view on the Thread.
tags:
- Certificates
responses:
'200':
description: Base64-encoded preview PDF + preflight.
content:
application/json:
schema:
$ref: '#/components/schemas/CertificatePreviewFormForThreadResponse'
'400':
description: Invalid data provided
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_DATA
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Feature is currently disabled
content:
application/json:
schema:
type: object
properties:
code:
const: FEATURE_DISABLED
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/certificates/resolve-form-values:
post:
operationId: certificates.resolve_form_values
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CertificateResolveFormValuesRequest'
summary: Resolve a Certificate Form's bindings against a Thread (values only, no PDF).
description: Resolves a (possibly unsaved) design's bindings against a Thread using the same resolution as issuance
preflight, and returns the per-zone renderable values (text + inline image data URLs) for the Live Design Canvas.
No PDF is rendered. Requires can_view on the Thread.
tags:
- Certificates
responses:
'200':
description: Per-zone resolved values.
content:
application/json:
schema:
$ref: '#/components/schemas/CertificateResolveFormValuesResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Feature is currently disabled
content:
application/json:
schema:
type: object
properties:
code:
const: FEATURE_DISABLED
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/certificates/generate:
post:
operationId: certificates.generate
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CertificateGenerateRequest'
summary: Generate (issue) a single Certificate.
description: Render the PDF, compute its SHA-256, enforce the same-Thread duplicate-checksum guard, and store the immutable
Certificate. Requires can_edit on the Thread.
tags:
- Certificates
responses:
'200':
description: The issued Certificate.
content:
application/json:
schema:
$ref: '#/components/schemas/CertificateResponse'
'400':
description: Invalid data provided
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_DATA
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Feature is currently disabled
content:
application/json:
schema:
type: object
properties:
code:
const: FEATURE_DISABLED
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/certificates/void:
post:
operationId: certificates.void
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CertificateVoidRequest'
summary: Void a Certificate.
description: Mark an issued Certificate as voided (owner-team admin only). Internal lifecycle status in R1.
tags:
- Certificates
responses:
'200':
description: The voided Certificate.
content:
application/json:
schema:
$ref: '#/components/schemas/CertificateResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Feature is currently disabled
content:
application/json:
schema:
type: object
properties:
code:
const: FEATURE_DISABLED
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/certificates:
get:
operationId: certificates.list
parameters:
- in: query
name: threadId
schema:
anyOf:
- type: string
description: a UUID
format: uuid
pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
- const: 00000000-0000-0000-0000-000000000000
description: a UUID
format: uuid
- const: ffffffff-ffff-ffff-ffff-ffffffffffff
description: a UUID
format: uuid
format: uuid
required: true
description: a UUID
- in: query
name: includeVoided
schema:
anyOf:
- enum:
- 'false'
- 'true'
- type: boolean
summary: List a Thread's Certificates.
description: List a Thread's Certificates. Includes voided Certificates by default; pass includeVoided=false to return
only issued ones. Follows Thread can_view.
tags:
- Certificates
responses:
'200':
description: Certificates.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/CertificateResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
type: object
properties:
code:
const: INVALID_REQUEST
message:
type: string
status:
const: 400
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'401':
description: Unauthorized
content:
application/json:
schema:
type: object
properties:
code:
const: UNAUTHORIZED
message:
type: string
status:
const: 401
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'403':
description: Feature is currently disabled
content:
application/json:
schema:
type: object
properties:
code:
const: FEATURE_DISABLED
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
/api/v1/certificates/{certificateId}:
get:
operationId: certificates.get
summary: Get a Certificate.
tags:
- Certificates
responses:
'200':
description: The Certificate.
content:
application/json:
schema:
$ref: '#/components/schemas/CertificateResponse'
'403':
description: Feature is currently disabled
content:
application/json:
schema:
type: object
properties:
code:
const: FEATURE_DISABLED
message:
type: string
status:
const: 403
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
'404':
description: Not Found
content:
application/json:
schema:
type: object
properties:
code:
const: NOT_FOUND
message:
type: string
status:
const: 404
detail:
type: object
description: Extra context information specific to this error
required:
- code
- message
- status
parameters:
- schema:
type: string
in: path
name: certificateId
required: true