@stackone/ai
Version:
Tools for agents to perform actions on your SaaS
1,760 lines • 84.3 kB
JavaScript
//#region src/openapi/generated/documents.ts
const documentsSpec = {
openapi: "3.1.0",
paths: {
"/unified/documents/files/{id}/download": { get: {
operationId: "documents_download_file",
parameters: [
{
name: "x-account-id",
in: "header",
description: "The account identifier",
required: true,
schema: { type: "string" }
},
{
name: "x-stackone-api-session-token",
in: "header",
description: "The session token",
required: false,
schema: { type: "string" }
},
{
name: "id",
required: true,
in: "path",
schema: { type: "string" }
},
{
name: "format",
required: false,
in: "query",
description: "The format to download the file in",
schema: {
nullable: true,
example: "base64",
type: "string"
}
},
{
name: "export_format",
required: false,
in: "query",
description: "The export format of the file",
schema: {
nullable: true,
example: "text/plain",
type: "string"
}
}
],
responses: {
"200": {
description: "The file with the given identifiers was retrieved.",
content: { "*/*": { schema: {
type: "string",
format: "binary"
} } }
},
"400": {
description: "Invalid request.",
content: { "application/json": { schema: { $ref: "#/components/schemas/BadRequestResponse" } } }
},
"401": {
description: "Unauthorized access.",
content: { "application/json": { schema: { $ref: "#/components/schemas/UnauthorizedResponse" } } }
},
"403": {
description: "Forbidden.",
content: { "application/json": { schema: { $ref: "#/components/schemas/ForbiddenResponse" } } }
},
"404": {
description: "Resource not found.",
content: { "application/json": { schema: { $ref: "#/components/schemas/NotFoundResponse" } } }
},
"408": {
description: "The request has timed out.",
headers: { "Retry-After": {
description: "A time in seconds after which the request can be retried.",
schema: { type: "string" }
} },
content: { "application/json": { schema: { $ref: "#/components/schemas/RequestTimedOutResponse" } } }
},
"409": {
description: "Conflict with current state.",
content: { "application/json": { schema: { $ref: "#/components/schemas/ConflictResponse" } } }
},
"412": {
description: "Precondition failed: linked account belongs to a disabled integration.",
content: { "application/json": { schema: { $ref: "#/components/schemas/PreconditionFailedResponse" } } }
},
"422": {
description: "Validation error.",
content: { "application/json": { schema: { $ref: "#/components/schemas/UnprocessableEntityResponse" } } }
},
"429": {
description: "Too many requests.",
content: { "application/json": { schema: { $ref: "#/components/schemas/TooManyRequestsResponse" } } }
},
"500": {
description: "Server error while executing the request.",
content: { "application/json": { schema: { $ref: "#/components/schemas/InternalServerErrorResponse" } } }
},
"501": {
description: "This functionality is not implemented.",
content: { "application/json": { schema: { $ref: "#/components/schemas/NotImplementedResponse" } } }
},
"502": {
description: "Bad gateway error.",
content: { "application/json": { schema: { $ref: "#/components/schemas/BadGatewayResponse" } } }
}
},
security: [{ basic: [] }],
summary: "Download File",
tags: ["Files"],
"x-speakeasy-group": "documents",
"x-speakeasy-name-override": "download_file",
"x-speakeasy-retries": {
statusCodes: [429, 408],
strategy: "backoff"
}
} },
"/unified/documents/files/upload": { post: {
operationId: "documents_upload_file",
parameters: [{
name: "x-account-id",
in: "header",
description: "The account identifier",
required: true,
schema: { type: "string" }
}, {
name: "x-stackone-api-session-token",
in: "header",
description: "The session token",
required: false,
schema: { type: "string" }
}],
requestBody: {
required: true,
content: { "application/json": { schema: { $ref: "#/components/schemas/UnifiedUploadRequestDto" } } }
},
responses: {
"201": {
description: "The file was uploaded.",
content: { "application/json": { schema: { $ref: "#/components/schemas/WriteResultApiModel" } } }
},
"400": {
description: "Invalid request.",
content: { "application/json": { schema: { $ref: "#/components/schemas/BadRequestResponse" } } }
},
"401": {
description: "Unauthorized access.",
content: { "application/json": { schema: { $ref: "#/components/schemas/UnauthorizedResponse" } } }
},
"403": {
description: "Forbidden.",
content: { "application/json": { schema: { $ref: "#/components/schemas/ForbiddenResponse" } } }
},
"404": {
description: "Resource not found.",
content: { "application/json": { schema: { $ref: "#/components/schemas/NotFoundResponse" } } }
},
"408": {
description: "The request has timed out.",
headers: { "Retry-After": {
description: "A time in seconds after which the request can be retried.",
schema: { type: "string" }
} },
content: { "application/json": { schema: { $ref: "#/components/schemas/RequestTimedOutResponse" } } }
},
"409": {
description: "Conflict with current state.",
content: { "application/json": { schema: { $ref: "#/components/schemas/ConflictResponse" } } }
},
"412": {
description: "Precondition failed: linked account belongs to a disabled integration.",
content: { "application/json": { schema: { $ref: "#/components/schemas/PreconditionFailedResponse" } } }
},
"422": {
description: "Validation error.",
content: { "application/json": { schema: { $ref: "#/components/schemas/UnprocessableEntityResponse" } } }
},
"429": {
description: "Too many requests.",
content: { "application/json": { schema: { $ref: "#/components/schemas/TooManyRequestsResponse" } } }
},
"500": {
description: "Server error while executing the request.",
content: { "application/json": { schema: { $ref: "#/components/schemas/InternalServerErrorResponse" } } }
},
"501": {
description: "This functionality is not implemented.",
content: { "application/json": { schema: { $ref: "#/components/schemas/NotImplementedResponse" } } }
},
"502": {
description: "Bad gateway error.",
content: { "application/json": { schema: { $ref: "#/components/schemas/BadGatewayResponse" } } }
}
},
security: [{ basic: [] }],
summary: "Upload File",
tags: ["Files"],
"x-speakeasy-group": "documents",
"x-speakeasy-name-override": "upload_file",
"x-speakeasy-retries": {
statusCodes: [429, 408],
strategy: "backoff"
}
} },
"/unified/documents/files": { get: {
operationId: "documents_list_files",
parameters: [
{
name: "x-account-id",
in: "header",
description: "The account identifier",
required: true,
schema: { type: "string" }
},
{
name: "x-stackone-api-session-token",
in: "header",
description: "The session token",
required: false,
schema: { type: "string" }
},
{
name: "raw",
required: false,
in: "query",
description: "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
schema: {
nullable: true,
type: "boolean"
}
},
{
name: "proxy",
required: false,
in: "query",
description: "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
schema: {
additionalProperties: true,
nullable: true,
type: "object"
}
},
{
name: "fields",
required: false,
in: "query",
description: "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
schema: {
nullable: true,
example: "id,remote_id,name,description,url,size,file_format,path,owner_id,remote_owner_id,folder_id,remote_folder_id,drive_id,remote_drive_id,export_formats,default_download_format,created_at,updated_at,has_content,has_children,all_parent_folder_ids,remote_all_parent_folder_ids",
type: "string"
}
},
{
name: "filter",
required: false,
in: "query",
description: "Documents Files Filter",
explode: true,
style: "deepObject",
schema: {
properties: {
updated_after: {
description: "Use a string with a date to only select results updated after that given date",
example: "2020-01-01T00:00:00.000Z",
type: "string",
format: "date-time",
nullable: true,
additionalProperties: false
},
name: {
description: "Search if the name of the file contains the string",
example: "john_doe_resume.pdf",
type: "string",
nullable: true
},
content: {
description: "Search if the contents of the file contains the string (contents can include file metadata)",
example: "FAQ of the project",
type: "string",
nullable: true
},
created_after: {
description: "Use a string with a date to only select results created after that given date",
example: "2020-01-01T00:00:00.000Z",
type: "string",
format: "date-time",
nullable: true,
additionalProperties: false
},
drive_id: {
description: "Use to only include Files within the specified Drive",
example: "1234567890",
type: "string",
nullable: true
},
folder_id: {
description: "Use to only include Files within the specified Folder. Required when requesting nested items",
example: "1234567890",
type: "string",
nullable: true
}
},
nullable: true,
type: "object"
}
},
{
name: "page",
required: false,
in: "query",
description: "The page number of the results to fetch",
deprecated: true,
schema: {
nullable: true,
type: "string"
}
},
{
name: "page_size",
required: false,
in: "query",
description: "The number of results per page (default value is 25)",
schema: {
nullable: true,
type: "string"
}
},
{
name: "next",
required: false,
in: "query",
description: "The unified cursor",
schema: {
nullable: true,
type: "string"
}
},
{
name: "updated_after",
required: false,
in: "query",
description: "Use a string with a date to only select results updated after that given date",
deprecated: true,
schema: {
format: "date-time",
nullable: true,
example: "2020-01-01T00:00:00.000Z",
type: "string"
}
},
{
name: "folder_id",
required: false,
in: "query",
description: "Use to only include Files within the specified Folder. Required when requesting nested items",
schema: {
nullable: true,
example: "1234567890",
type: "string"
}
},
{
name: "nested_items",
required: false,
in: "query",
description: "When \"true\" and used with filter[folder_id], the response includes Files and Files within descendant Folders",
schema: {
nullable: true,
default: "false",
example: "true",
type: "string"
}
},
{
name: "include",
required: false,
in: "query",
description: "The comma separated list of fields that will be included in the response",
schema: {
nullable: true,
example: "all_parent_folder_ids",
type: "string"
}
}
],
responses: {
"200": {
description: "The list of files was retrieved.",
content: { "application/json": { schema: { $ref: "#/components/schemas/FilesPaginated" } } }
},
"400": {
description: "Invalid request.",
content: { "application/json": { schema: { $ref: "#/components/schemas/BadRequestResponse" } } }
},
"401": {
description: "Unauthorized access.",
content: { "application/json": { schema: { $ref: "#/components/schemas/UnauthorizedResponse" } } }
},
"403": {
description: "Forbidden.",
content: { "application/json": { schema: { $ref: "#/components/schemas/ForbiddenResponse" } } }
},
"404": {
description: "Resource not found.",
content: { "application/json": { schema: { $ref: "#/components/schemas/NotFoundResponse" } } }
},
"408": {
description: "The request has timed out.",
headers: { "Retry-After": {
description: "A time in seconds after which the request can be retried.",
schema: { type: "string" }
} },
content: { "application/json": { schema: { $ref: "#/components/schemas/RequestTimedOutResponse" } } }
},
"409": {
description: "Conflict with current state.",
content: { "application/json": { schema: { $ref: "#/components/schemas/ConflictResponse" } } }
},
"412": {
description: "Precondition failed: linked account belongs to a disabled integration.",
content: { "application/json": { schema: { $ref: "#/components/schemas/PreconditionFailedResponse" } } }
},
"422": {
description: "Validation error.",
content: { "application/json": { schema: { $ref: "#/components/schemas/UnprocessableEntityResponse" } } }
},
"429": {
description: "Too many requests.",
content: { "application/json": { schema: { $ref: "#/components/schemas/TooManyRequestsResponse" } } }
},
"500": {
description: "Server error while executing the request.",
content: { "application/json": { schema: { $ref: "#/components/schemas/InternalServerErrorResponse" } } }
},
"501": {
description: "This functionality is not implemented.",
content: { "application/json": { schema: { $ref: "#/components/schemas/NotImplementedResponse" } } }
},
"502": {
description: "Bad gateway error.",
content: { "application/json": { schema: { $ref: "#/components/schemas/BadGatewayResponse" } } }
}
},
security: [{ basic: [] }],
summary: "List Files",
tags: ["Files"],
"x-speakeasy-group": "documents",
"x-speakeasy-name-override": "list_files",
"x-speakeasy-pagination": {
type: "cursor",
inputs: [{
name: "next",
in: "parameters",
type: "cursor"
}],
outputs: { nextCursor: "$.next" }
},
"x-speakeasy-retries": {
statusCodes: [429, 408],
strategy: "backoff"
}
} },
"/unified/documents/files/{id}": { get: {
operationId: "documents_get_file",
parameters: [
{
name: "x-account-id",
in: "header",
description: "The account identifier",
required: true,
schema: { type: "string" }
},
{
name: "x-stackone-api-session-token",
in: "header",
description: "The session token",
required: false,
schema: { type: "string" }
},
{
name: "id",
required: true,
in: "path",
schema: { type: "string" }
},
{
name: "raw",
required: false,
in: "query",
description: "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
schema: {
nullable: true,
type: "boolean"
}
},
{
name: "proxy",
required: false,
in: "query",
description: "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
style: "deepObject",
explode: true,
schema: {
additionalProperties: true,
nullable: true,
type: "object"
}
},
{
name: "fields",
required: false,
in: "query",
description: "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
schema: {
nullable: true,
example: "id,remote_id,name,description,url,size,file_format,path,owner_id,remote_owner_id,folder_id,remote_folder_id,drive_id,remote_drive_id,export_formats,default_download_format,created_at,updated_at,has_content,has_children,all_parent_folder_ids,remote_all_parent_folder_ids",
type: "string"
}
},
{
name: "include",
required: false,
in: "query",
description: "The comma separated list of fields that will be included in the response",
schema: {
nullable: true,
example: "all_parent_folder_ids",
type: "string"
}
}
],
responses: {
"200": {
description: "The file with the given identifier was retrieved.",
content: { "application/json": { schema: { $ref: "#/components/schemas/FileResult" } } }
},
"400": {
description: "Invalid request.",
content: { "application/json": { schema: { $ref: "#/components/schemas/BadRequestResponse" } } }
},
"401": {
description: "Unauthorized access.",
content: { "application/json": { schema: { $ref: "#/components/schemas/UnauthorizedResponse" } } }
},
"403": {
description: "Forbidden.",
content: { "application/json": { schema: { $ref: "#/components/schemas/ForbiddenResponse" } } }
},
"404": {
description: "Resource not found.",
content: { "application/json": { schema: { $ref: "#/components/schemas/NotFoundResponse" } } }
},
"408": {
description: "The request has timed out.",
headers: { "Retry-After": {
description: "A time in seconds after which the request can be retried.",
schema: { type: "string" }
} },
content: { "application/json": { schema: { $ref: "#/components/schemas/RequestTimedOutResponse" } } }
},
"409": {
description: "Conflict with current state.",
content: { "application/json": { schema: { $ref: "#/components/schemas/ConflictResponse" } } }
},
"412": {
description: "Precondition failed: linked account belongs to a disabled integration.",
content: { "application/json": { schema: { $ref: "#/components/schemas/PreconditionFailedResponse" } } }
},
"422": {
description: "Validation error.",
content: { "application/json": { schema: { $ref: "#/components/schemas/UnprocessableEntityResponse" } } }
},
"429": {
description: "Too many requests.",
content: { "application/json": { schema: { $ref: "#/components/schemas/TooManyRequestsResponse" } } }
},
"500": {
description: "Server error while executing the request.",
content: { "application/json": { schema: { $ref: "#/components/schemas/InternalServerErrorResponse" } } }
},
"501": {
description: "This functionality is not implemented.",
content: { "application/json": { schema: { $ref: "#/components/schemas/NotImplementedResponse" } } }
},
"502": {
description: "Bad gateway error.",
content: { "application/json": { schema: { $ref: "#/components/schemas/BadGatewayResponse" } } }
}
},
security: [{ basic: [] }],
summary: "Get File",
tags: ["Files"],
"x-speakeasy-group": "documents",
"x-speakeasy-name-override": "get_file",
"x-speakeasy-retries": {
statusCodes: [429, 408],
strategy: "backoff"
}
} },
"/unified/documents/folders": { get: {
operationId: "documents_list_folders",
parameters: [
{
name: "x-account-id",
in: "header",
description: "The account identifier",
required: true,
schema: { type: "string" }
},
{
name: "raw",
required: false,
in: "query",
description: "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
schema: {
nullable: true,
type: "boolean"
}
},
{
name: "proxy",
required: false,
in: "query",
description: "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
schema: {
additionalProperties: true,
nullable: true,
type: "object"
}
},
{
name: "fields",
required: false,
in: "query",
description: "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
schema: {
nullable: true,
example: "id,remote_id,name,description,url,size,path,owner_id,remote_owner_id,parent_folder_id,remote_parent_folder_id,drive_id,remote_drive_id,created_at,updated_at,has_content,has_children,is_root,all_parent_folder_ids,remote_all_parent_folder_ids",
type: "string"
}
},
{
name: "filter",
required: false,
in: "query",
description: "Documents Folders Filter",
explode: true,
style: "deepObject",
schema: {
properties: {
updated_after: {
description: "Use a string with a date to only select results updated after that given date",
example: "2020-01-01T00:00:00.000Z",
type: "string",
format: "date-time",
nullable: true,
additionalProperties: false
},
drive_id: {
description: "Use to only include Folders within the specified Drive",
example: "1234567890",
type: "string",
nullable: true,
additionalProperties: false
},
folder_id: {
description: "Use to only include Folders within the specified Folder. Required when requesting nested items",
example: "1234567890",
type: "string",
nullable: true,
additionalProperties: false
}
},
nullable: true,
type: "object"
}
},
{
name: "page",
required: false,
in: "query",
description: "The page number of the results to fetch",
deprecated: true,
schema: {
nullable: true,
type: "string"
}
},
{
name: "page_size",
required: false,
in: "query",
description: "The number of results per page (default value is 25)",
schema: {
nullable: true,
type: "string"
}
},
{
name: "next",
required: false,
in: "query",
description: "The unified cursor",
schema: {
nullable: true,
type: "string"
}
},
{
name: "updated_after",
required: false,
in: "query",
description: "Use a string with a date to only select results updated after that given date",
deprecated: true,
schema: {
format: "date-time",
nullable: true,
example: "2020-01-01T00:00:00.000Z",
type: "string"
}
},
{
name: "folder_id",
required: false,
in: "query",
description: "Use to only include Folders within the specified Folder. Required when requesting nested items",
schema: {
nullable: true,
example: "1234567890",
type: "string"
}
},
{
name: "nested_items",
required: false,
in: "query",
description: "When \"true\" and used with filter[folder_id], the response includes Folders and their descendant Folders",
schema: {
nullable: true,
default: "false",
example: "true",
type: "string"
}
},
{
name: "include",
required: false,
in: "query",
description: "The comma separated list of fields that will be included in the response",
schema: {
nullable: true,
example: "all_parent_folder_ids",
type: "string"
}
}
],
responses: {
"200": {
description: "The list of folders was retrieved.",
content: { "application/json": { schema: { $ref: "#/components/schemas/FoldersPaginated" } } }
},
"400": {
description: "Invalid request.",
content: { "application/json": { schema: { $ref: "#/components/schemas/BadRequestResponse" } } }
},
"401": {
description: "Unauthorized access.",
content: { "application/json": { schema: { $ref: "#/components/schemas/UnauthorizedResponse" } } }
},
"403": {
description: "Forbidden.",
content: { "application/json": { schema: { $ref: "#/components/schemas/ForbiddenResponse" } } }
},
"404": {
description: "Resource not found.",
content: { "application/json": { schema: { $ref: "#/components/schemas/NotFoundResponse" } } }
},
"408": {
description: "The request has timed out.",
headers: { "Retry-After": {
description: "A time in seconds after which the request can be retried.",
schema: { type: "string" }
} },
content: { "application/json": { schema: { $ref: "#/components/schemas/RequestTimedOutResponse" } } }
},
"409": {
description: "Conflict with current state.",
content: { "application/json": { schema: { $ref: "#/components/schemas/ConflictResponse" } } }
},
"412": {
description: "Precondition failed: linked account belongs to a disabled integration.",
content: { "application/json": { schema: { $ref: "#/components/schemas/PreconditionFailedResponse" } } }
},
"422": {
description: "Validation error.",
content: { "application/json": { schema: { $ref: "#/components/schemas/UnprocessableEntityResponse" } } }
},
"429": {
description: "Too many requests.",
content: { "application/json": { schema: { $ref: "#/components/schemas/TooManyRequestsResponse" } } }
},
"500": {
description: "Server error while executing the request.",
content: { "application/json": { schema: { $ref: "#/components/schemas/InternalServerErrorResponse" } } }
},
"501": {
description: "This functionality is not implemented.",
content: { "application/json": { schema: { $ref: "#/components/schemas/NotImplementedResponse" } } }
},
"502": {
description: "Bad gateway error.",
content: { "application/json": { schema: { $ref: "#/components/schemas/BadGatewayResponse" } } }
}
},
security: [{ basic: [] }],
summary: "List Folders",
tags: ["Folders"],
"x-speakeasy-group": "documents",
"x-speakeasy-name-override": "list_folders",
"x-speakeasy-pagination": {
type: "cursor",
inputs: [{
name: "next",
in: "parameters",
type: "cursor"
}],
outputs: { nextCursor: "$.next" }
},
"x-speakeasy-retries": {
statusCodes: [429, 408],
strategy: "backoff"
}
} },
"/unified/documents/folders/{id}": { get: {
operationId: "documents_get_folder",
parameters: [
{
name: "x-account-id",
in: "header",
description: "The account identifier",
required: true,
schema: { type: "string" }
},
{
name: "id",
required: true,
in: "path",
schema: { type: "string" }
},
{
name: "raw",
required: false,
in: "query",
description: "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
schema: {
nullable: true,
type: "boolean"
}
},
{
name: "proxy",
required: false,
in: "query",
description: "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
style: "deepObject",
explode: true,
schema: {
additionalProperties: true,
nullable: true,
type: "object"
}
},
{
name: "fields",
required: false,
in: "query",
description: "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
schema: {
nullable: true,
example: "id,remote_id,name,description,url,size,path,owner_id,remote_owner_id,parent_folder_id,remote_parent_folder_id,drive_id,remote_drive_id,created_at,updated_at,has_content,has_children,is_root,all_parent_folder_ids,remote_all_parent_folder_ids",
type: "string"
}
},
{
name: "include",
required: false,
in: "query",
description: "The comma separated list of fields that will be included in the response",
schema: {
nullable: true,
example: "all_parent_folder_ids",
type: "string"
}
}
],
responses: {
"200": {
description: "The folder with the given identifier was retrieved.",
content: { "application/json": { schema: { $ref: "#/components/schemas/FolderResult" } } }
},
"400": {
description: "Invalid request.",
content: { "application/json": { schema: { $ref: "#/components/schemas/BadRequestResponse" } } }
},
"401": {
description: "Unauthorized access.",
content: { "application/json": { schema: { $ref: "#/components/schemas/UnauthorizedResponse" } } }
},
"403": {
description: "Forbidden.",
content: { "application/json": { schema: { $ref: "#/components/schemas/ForbiddenResponse" } } }
},
"404": {
description: "Resource not found.",
content: { "application/json": { schema: { $ref: "#/components/schemas/NotFoundResponse" } } }
},
"408": {
description: "The request has timed out.",
headers: { "Retry-After": {
description: "A time in seconds after which the request can be retried.",
schema: { type: "string" }
} },
content: { "application/json": { schema: { $ref: "#/components/schemas/RequestTimedOutResponse" } } }
},
"409": {
description: "Conflict with current state.",
content: { "application/json": { schema: { $ref: "#/components/schemas/ConflictResponse" } } }
},
"412": {
description: "Precondition failed: linked account belongs to a disabled integration.",
content: { "application/json": { schema: { $ref: "#/components/schemas/PreconditionFailedResponse" } } }
},
"422": {
description: "Validation error.",
content: { "application/json": { schema: { $ref: "#/components/schemas/UnprocessableEntityResponse" } } }
},
"429": {
description: "Too many requests.",
content: { "application/json": { schema: { $ref: "#/components/schemas/TooManyRequestsResponse" } } }
},
"500": {
description: "Server error while executing the request.",
content: { "application/json": { schema: { $ref: "#/components/schemas/InternalServerErrorResponse" } } }
},
"501": {
description: "This functionality is not implemented.",
content: { "application/json": { schema: { $ref: "#/components/schemas/NotImplementedResponse" } } }
},
"502": {
description: "Bad gateway error.",
content: { "application/json": { schema: { $ref: "#/components/schemas/BadGatewayResponse" } } }
}
},
security: [{ basic: [] }],
summary: "Get Folder",
tags: ["Folders"],
"x-speakeasy-group": "documents",
"x-speakeasy-name-override": "get_folder",
"x-speakeasy-retries": {
statusCodes: [429, 408],
strategy: "backoff"
}
} },
"/unified/documents/drives": { get: {
operationId: "documents_list_drives",
parameters: [
{
name: "x-account-id",
in: "header",
description: "The account identifier",
required: true,
schema: { type: "string" }
},
{
name: "raw",
required: false,
in: "query",
description: "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
schema: {
nullable: true,
type: "boolean"
}
},
{
name: "proxy",
required: false,
in: "query",
description: "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
schema: {
additionalProperties: true,
nullable: true,
type: "object"
}
},
{
name: "fields",
required: false,
in: "query",
description: "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
schema: {
nullable: true,
example: "id,remote_id,name,description,url,created_at,updated_at",
type: "string"
}
},
{
name: "filter",
required: false,
in: "query",
description: "Filter parameters that allow greater customisation of the list response",
explode: true,
style: "deepObject",
schema: {
properties: { updated_after: {
description: "Use a string with a date to only select results updated after that given date",
example: "2020-01-01T00:00:00.000Z",
type: "string",
format: "date-time",
nullable: true,
additionalProperties: false
} },
nullable: true,
type: "object"
}
},
{
name: "page",
required: false,
in: "query",
description: "The page number of the results to fetch",
deprecated: true,
schema: {
nullable: true,
type: "string"
}
},
{
name: "page_size",
required: false,
in: "query",
description: "The number of results per page (default value is 25)",
schema: {
nullable: true,
type: "string"
}
},
{
name: "next",
required: false,
in: "query",
description: "The unified cursor",
schema: {
nullable: true,
type: "string"
}
},
{
name: "updated_after",
required: false,
in: "query",
description: "Use a string with a date to only select results updated after that given date",
deprecated: true,
schema: {
format: "date-time",
nullable: true,
example: "2020-01-01T00:00:00.000Z",
type: "string"
}
}
],
responses: {
"200": {
description: "The list of drives was retrieved.",
content: { "application/json": { schema: { $ref: "#/components/schemas/DrivesPaginated" } } }
},
"400": {
description: "Invalid request.",
content: { "application/json": { schema: { $ref: "#/components/schemas/BadRequestResponse" } } }
},
"401": {
description: "Unauthorized access.",
content: { "application/json": { schema: { $ref: "#/components/schemas/UnauthorizedResponse" } } }
},
"403": {
description: "Forbidden.",
content: { "application/json": { schema: { $ref: "#/components/schemas/ForbiddenResponse" } } }
},
"404": {
description: "Resource not found.",
content: { "application/json": { schema: { $ref: "#/components/schemas/NotFoundResponse" } } }
},
"408": {
description: "The request has timed out.",
headers: { "Retry-After": {
description: "A time in seconds after which the request can be retried.",
schema: { type: "string" }
} },
content: { "application/json": { schema: { $ref: "#/components/schemas/RequestTimedOutResponse" } } }
},
"409": {
description: "Conflict with current state.",
content: { "application/json": { schema: { $ref: "#/components/schemas/ConflictResponse" } } }
},
"412": {
description: "Precondition failed: linked account belongs to a disabled integration.",
content: { "application/json": { schema: { $ref: "#/components/schemas/PreconditionFailedResponse" } } }
},
"422": {
description: "Validation error.",
content: { "application/json": { schema: { $ref: "#/components/schemas/UnprocessableEntityResponse" } } }
},
"429": {
description: "Too many requests.",
content: { "application/json": { schema: { $ref: "#/components/schemas/TooManyRequestsResponse" } } }
},
"500": {
description: "Server error while executing the request.",
content: { "application/json": { schema: { $ref: "#/components/schemas/InternalServerErrorResponse" } } }
},
"501": {
description: "This functionality is not implemented.",
content: { "application/json": { schema: { $ref: "#/components/schemas/NotImplementedResponse" } } }
},
"502": {
description: "Bad gateway error.",
content: { "application/json": { schema: { $ref: "#/components/schemas/BadGatewayResponse" } } }
}
},
security: [{ basic: [] }],
summary: "List Drives",
tags: ["Drives"],
"x-speakeasy-group": "documents",
"x-speakeasy-name-override": "list_drives",
"x-speakeasy-pagination": {
type: "cursor",
inputs: [{
name: "next",
in: "parameters",
type: "cursor"
}],
outputs: { nextCursor: "$.next" }
},
"x-speakeasy-retries": {
statusCodes: [429, 408],
strategy: "backoff"
}
} },
"/unified/documents/drives/{id}": { get: {
operationId: "documents_get_drive",
parameters: [
{
name: "x-account-id",
in: "header",
description: "The account identifier",
required: true,
schema: { type: "string" }
},
{
name: "id",
required: true,
in: "path",
schema: { type: "string" }
},
{
name: "raw",
required: false,
in: "query",
description: "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
schema: {
nullable: true,
type: "boolean"
}
},
{
name: "proxy",
required: false,
in: "query",
description: "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
style: "deepObject",
explode: true,
schema: {
additionalProperties: true,
nullable: true,
type: "object"
}
},
{
name: "fields",
required: false,
in: "query",
description: "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
schema: {
nullable: true,
example: "id,remote_id,name,description,url,created_at,updated_at",
type: "string"
}
}
],
responses: {
"200": {
description: "The drive with the given identifier was retrieved.",
content: { "application/json": { schema: { $ref: "#/components/schemas/DriveResult" } } }
},
"400": {
description: "Invalid request.",
content: { "application/json": { schema: { $ref: "#/components/schemas/BadRequestResponse" } } }
},
"401": {
description: "Unauthorized access.",
content: { "application/json": { schema: { $ref: "#/components/schemas/UnauthorizedResponse" } } }
},
"403": {
description: "Forbidden.",
content: { "application/json": { schema: { $ref: "#/components/schemas/ForbiddenResponse" } } }
},
"404": {
description: "Resource not found.",
content: { "application/json": { schema: { $ref: "#/components/schemas/NotFoundResponse" } } }
},
"408": {
description: "The request has timed out.",
headers: { "Retry-After": {
description: "A time in seconds after which the request can be retried.",
schema: { type: "string" }
} },
content: { "application/json": { schema: { $ref: "#/components/schemas/RequestTimedOutResponse" } } }
},
"409": {
description: "Conflict with current state.",
content: { "application/json": { schema: { $ref: "#/components/schemas/ConflictResponse" } } }
},
"412": {
description: "Precondition failed: linked account belongs to a disabled integration.",
content: { "application/json": { schema: { $ref: "#/components/schemas/PreconditionFailedResponse" } } }
},
"422": {
description: "Validation error.",
content: { "application/json": { schema: { $ref: "#/components/schemas/UnprocessableEntityResponse" } } }
},
"429": {
description: "Too many requests.",
content: { "application/json": { schema: { $ref: "#/components/schemas/TooManyRequestsResponse" } } }
},
"500": {
description: "Server error while executing the request.",
content: { "application/json": { schema: { $ref: "#/components/schemas/InternalServerErrorResponse" } } }
},
"501": {
description: "This functionality is not implemented.",
content: { "application/json": { schema: { $ref: "#/components/schemas/NotImplementedResponse" } } }
},
"502": {
description: "Bad gateway error.",
content: { "application/json": { schema: { $ref: "#/components/schemas/BadGatewayResponse" } } }
}
},
security: [{ basic: [] }],
summary: "Get Drive",
tags: ["Drives"],
"x-speakeasy-group": "documents",
"x-speakeasy-name-override": "get_drive",
"x-speakeasy-retries": {
statusCodes: [429, 408],
strategy: "backoff"
}
} }
},
info: {
title: "Documents",
description: "The documentation for the StackOne Unified API - DOCUMENTS",
version: "1.0.0",
contact: {}
},
tags: [
{
name: "Files",
description: "Files that can be uploaded or managed."
},
{
name: "Folders",
description: "Folders for organizing files."
},
{
name: "Drives",
description: "Drives for storing and managing files."
}
],
servers: [{ url: "https://api.stackone.com" }],
components: {
securitySchemes: { basic: {
type: "http",
scheme: "basic"
} },
schemas: {
BadGatewayResponse: {
type: "object",
properties: {
statusCode: {
type: "number",
description: "HTTP status code",
example: 502
},
message: {
type: "string",
description: "Error message",
example: "Bad Gateway"
},
timestamp: {
type: "string",
description: "Timestamp when the error occurred",
example: "2023-05-30T00:00:00.000Z",
format: "date-time"
}
},
required: [
"statusCode",
"message",
"timestamp"
]
},
BadRequestResponse: {
type: "object",
properties: {
statusCode: {
type: "number",
description: "HTTP status code",
example: 400
},
message: {
type: "string",
description: "Error message",
example: "Bad Request"
},
timestamp: {
type: "string",
description: "Timestamp when the error occurred",
example: "2023-05-30T00:00:00.000Z",
format: "date-time"
},
data: {
description: "Error details",
nullable: true,
allOf: [{ $ref: "#/components/schemas/UnifiedError" }]
},
provider_errors: {
description: "List of provider-specific errors",
nullable: true,
type: "array",
items: { $ref: "#/components/schemas/ProviderError" }
}
},
required: [
"statusCode",
"message",
"timestamp"
]
},
ConfidentialEnumApiModel: {
type: "object",
properties: {
value: {
type: "string",
description: "Whether the file is confidential or not",
enum: [
"true",
"false",
"unmapped_value",
null
],
example: "true",
"x-speakeasy-unknown-values": "allow",
nullable: true
},
source_value: {
oneOf: [
{ type: "string" },
{ type: "number" },
{ type: "boolean" },
{ type: "object" },
{
type: "array",
items: {}
}
],
example: "public",
nullable: true
}
}
},
ConflictResponse: {
type: "object",
properties: {
statusCode: {
type: "number",
description: "HTTP status code",
example: 409
},
message: {
type: "string",
description: "Error message",
example: "Conflict"
},
timestamp: {
type: "string",
description: "Timestamp when the error occurred",
example: "2023-05-30T00:00:00.000Z",
format: "date-time"
}
},
required: [
"statusCode",
"message",
"timestamp"
]
},
DriveResult: {
type: "object",
properties: {
data: { $ref: "#/components/schemas/Drives" },
raw: {
nullable: true,
type: "array",
items: { $ref: "#/components/schemas/RawResponse" }
}
},
required: ["data"]
},
Drives: {
type: "object",
properties: {
id: {
type: "string",
description: "The ID associated with this drive",
example: "16873-IT345",
nullable: true
},
remote_id: {
type: "string",
description: "Provider's unique identifier",
example: "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
nullable: true
},
name: {
type: "string",
description: "The name associated with this drive",
example: "USA Development Drive",
nullable: true
},
description: {
type: "string",
description: "The description associated with this drive",
example: "Drive with USA Development documents",
nullable: true
},
url: {
type: "string",
description: "The url of the drive",
example: "https://test.sharepoint.com/Document%20Library",
nullable: true
},
created_at: {
type: "string",
description: "The created date of the drive",
example: "2023-02-23T00:00:00.000Z",
format: "date-time",
nullable: true
},
updated_at: {
type: "string",
description: "The last updated date of the drive",
example: "2024-02-23T00:00:00.000Z",
format: "date-time",
nullable: true
}
}
},
DrivesPaginated: {
type: "object",
properties: {
next: {
type: "string",
nullable: true
},
data: {
type: "array",
items: { $ref: "#/components/schemas/Drives" }
},
raw: {
nullable: true,
type: "array",
items: { $ref: "#/components/schemas/RawResponse" }
}
},
required: ["data"]
},
FileFormatEnum: {
type: "object",
properties: {
value: {
type: "string",
description: "The file format of the file, expressed as a file extension",
enum: [
"unmapped_value",
"ez",
"aw",
"atom",
"atomcat",
"atomdeleted",
"atomsvc",
"dwd",
"held",
"rsat",
"bdoc",
"xcs",
"ccxml",
"cdfx",
"cdmia",
"cdmic",
"cdmid",
"cdmio",
"cdmiq",
"cu",
"mpd",
"davmount",
"dbk",
"dssc",
"xdssc",
"es",
"ecma",
"emma",
"emotionml",
"epub",
"exi",
"exp",
"fdt",
"pfr",
"geojson",
"gml",
"gpx",
"gxf",
"gz",
"hjson",
"stk",
"ink",
"inkml",
"ipfix",
"its",
"jar",
"war",
"ear",
"ser",
"class",
"js",
"mjs",
"json",
"map",
"json5",
"jsonml",
"jsonld",
"lgr",
"lostxml",
"hqx",
"cpt",
"mads",
"webmanifest",
"mrc",
"mrcx",
"ma",
"nb",
"mb",
"mathml",
"mbox",
"mscml",
"metalink",
"meta4",
"mets",
"maei",
"musd",
"mods",
"m21",
"mp21",
"mp4s",
"m4p",
"doc",
"dot",
"mxf",
"nq",
"nt",
"cjs",
"bin",
"dms",
"lrf",
"mar",
"so",
"dist",
"distz",
"pkg",
"bpk",
"dump",
"elc",
"deploy",
"exe",
"dll",
"deb",
"dmg",
"iso",
"img",
"msi",
"msp",
"msm",
"buffer",
"oda",
"opf",
"ogx",
"omdoc",
"onetoc",
"onetoc2",
"onetmp",
"onepkg",
"oxps",
"relo",
"xer",
"pdf",
"pgp",
"asc",
"sig",
"prf",
"p10",
"p7m",
"p7c",
"p7s",
"p8",
"ac",
"cer",
"crl",
"pkipath",
"pki",
"pls",
"ai",
"eps",
"ps",
"provx",
"pskcxml",
"raml",
"rdf",
"owl",
"rif",
"rnc",
"rl",
"rld",
"rs",
"rapd",
"sls",
"rusd",
"gbr",
"mft",
"roa",
"rsd",
"rss",
"rtf",
"sbml",
"scq",
"scs",
"spq",
"spp",
"sdp",
"senmlx",
"sensmlx",
"setpay",
"setreg",
"shf",
"siv",
"sieve",
"smi",
"smil",
"rq",
"srx",
"gram",
"grxml",
"sru",
"ssdl",
"ssml",
"swidtag",
"tei",
"teicorpus",
"tfi",
"tsd",
"toml",
"trig",
"ttml",
"ubj",
"rsheet",
"td",
"vxml",
"wasm",
"wgt",
"hlp",
"wsdl",
"wspolicy",
"xaml",
"xav",
"xca",
"xdf",
"xel",
"xns",
"xenc",
"xhtml",
"xht",
"xlf",
"xml",
"xsl",
"xsd",
"rng",
"dtd",
"xop",
"xpl",
"*xsl",
"xslt",
"xspf",
"mxml",
"xhvml",
"xvml",
"xvm",
"yang",
"yin",
"zip",
"*3gpp",
"adp",
"amr",
"au",
"snd",
"mid",
"midi",
"kar",
"rmi",
"mxmf",
"*mp3",
"m4a",
"mp4a",
"mpga",
"mp2",
"mp2a",
"mp3",
"m2a",
"m3a",
"oga",
"ogg",
"spx",
"opus",
"s3m",
"sil",
"wav",
"*wav",
"weba",
"xm