openapi: 3.0.2 info: title: Onna Platform API description: >- # Introduction ![Onna](https://onna.com/wp-content/uploads/2022/02/graphic-solutions-kip-kd.png "Diagram showing how Onna connects to various applications") The Onna Platform API enables you to programmatically upload your data into our Knowledge Integration Platform. This unlocks the possibility to have all your data in one place and turn it into knowledge—even data we don't support directly with one of [our connectors](https://onna.com/connectors/ "List of available connectors"). ## Key concepts Before starting to use the API, we recommend to become familiar with some key concepts. For more information on the key concepts, see [API basics](https://dev.onna.com/fundamentals/api-basics "Documentation about API basics"). ## Requirements To use this API, you must have an active account on an [Enterprise Plan](https://onna.com/pricing/ "Onna pricing page") and have the [Developer role assigned](https://dev.onna.com/get-started/authentication#assign-developer-role "Sections on how to assign a developer role"). For more information, see [Requirements](https://dev.onna.com/fundamentals/api-basics#requirements "Section about requirements"). ## Security This API requires that all requests are made using [HTTPS](https://en.wikipedia.org/wiki/HTTPS "Wikipedia entry for HTTPS") and must be [authenticated with a valid token](https://dev.onna.com/get-started/authentication "Article about authentication"). ## Response codes A full list of the response codes returned by this API is available at [Response codes](https://dev.onna.com/fundamentals/response-codes "List of supported response codes"). ## Versioning This API uses semantic versioning to ensure that your client doesn't break. The version is declared in the URL so that you can lock to a specific one by prefix the URL. When the version declared in the URL is not supported, you will receive a 400 response. For more information, see [Versioning](https://dev.onna.com/fundamentals/api-basics#versioning "Section about versioning"). ## Date and time format This API supports dates and times in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601 "Wikipedia entry for the IS0 8601 standard") format. ## Pagination This API uses cursoring to divide large sets of results in multiple pages. For more information, see [Pagination](https://dev.onna.com/fundamentals/api-basics/#pagination "Section about supported pagination"). ## Parameters There are many ways to pass parameters when making requests to this API. For more information, see [Parameters](https://dev.onna.com/fundamentals/api-basics#parameters "Section about supported parameters"). ## Resource types You can ingest various type of resources. For more information, see [Resource types](https://dev.onna.com/fundamentals/resource-types "Article about supported resource types"). version: v1.1.0 contact: name: Onna Help url: https://dev.onna.com/help license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0.html termsOfService: https://dev.onna.com/legal servers: - description: Production Server url: https://api.onna.com/v1 tags: - description: >- [Workspaces](https://help.onna.com/hc/en-us/articles/4628449003292-Creating-and-Managing-Workspaces) are locations where you can collect data coming from different sources, organize it, and collaborate with other members of your team. You can share workspaces with collaborators with various permission levels and roles. Permission levels are dependent on the type of expected collaboration. You can also search across an entire workspace and export the results of your searches or entire data collections. This collection includes all the endpoints that enable you to work and collaborate inside workspaces. name: Workspaces - description: >- A generic endpoint to upload a raw file to an existing resource (ticket, file, etc). Our upload engine is based on the [TUS protocol](https://tus.io/ "TUS protocol website") and treats every upload as a resumable file upload. Check our get [started guide](https://dev.onna.com/get-started/hello-world?_highlight=tus#initialize-tus "Get started with TUS and the platform API"). Whatever the programming language you're using, it's possible that there's a library that integrates this protocol. For more information about TUS, see the [TUS documentation](https://tus.io/protocols/resumable-upload.html "TUS protocol documentation"). name: Upload - description: >- Folders are containers for your files or other folders. A place where you can group your resources together, like in any desktop operating system. This collection includes all the endpoints that enable you to handle folders, such as creating, retrieving, or deleting them. name: Folders - description: >- You can ingest a wide range of raw files. Here's the details of what raw files you can view in the UI: - Media (Audio, Video, Images) - PDFs - Microsoft Documents (DOC, DOCX, PPT, PPTX), rendered as PDFs - Microsoft Spreadsheets (Worksheets rendered as tabs) - Plain text (CSV, TXT), rendered as PDFs - Emails (EML, MSG) - Web pages (HTM, HTML) - Code For more information,please check our docs about [raw-files](https://dev.onna.com/fundamentals/resource-types#raw-files "Link to docs site about raw-file ingestion") ingestion. name: 'Resources: Files' - description: >- The `Ticket` resource type defines resources with which two parties communicate to track work to resolve issues or deliver incremental value. Customer support requests, service desk tickets, or software development projects are some examples of what can be mapped to this resource type. Read our developer documentation to learn more about the [Ticket resource type](https://dev.onna.com/fundamentals/resource-types#ticket). name: 'Resources: Tickets' - description: >- Our API uses OAuth 2's Client Credentials Grant to authenticate your requests. This grant type is especially suited for machine-to-machine (M2M) applications, such as the applications you build on top of the Onna platform. For more information please check our detailed [authentication docs](https://dev.onna.com/get-started/authentication). name: Authentication - name: CustomFields - description: API Utils, such as the `health` endpoint. name: Utils - description: >- You can define custom resource types by defining and uploading a new schema. name: 'Resources: Custom Models' - description: >- A schema defines a custom model. They can be used to upload custom resources. name: Schemas paths: /customFields: get: tags: - CustomFields summary: List Custom Fields operationId: CustomFields_list security: - OAuth2: [] description: List custom fields. parameters: - description: >- The API uses [cursoring for pagination.](https://dev.onna.com/fundamentals/api-basics/#pagination) example: '2022-02-22T11:11:11.12345' in: query name: cursor required: false schema: title: Cursor description: >- The API uses [cursoring for pagination.](https://dev.onna.com/fundamentals/api-basics/#pagination) type: string responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/CustomFieldPageResponseBody' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: curl ... post: tags: - CustomFields summary: Create Custom Field operationId: CustomFields_createField security: - OAuth2: [] description: Create a custom field. parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateCustomFieldRequestBody' required: true responses: '201': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/CreateCustomFieldResponseBody' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: curl ... /folders: post: tags: - Folders summary: Create Folder operationId: Folders_createNewFolder security: - OAuth2: [] description: Create a folder in a workspace. parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateFolderRequestBody' required: true responses: '201': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/CreateFolderResponseBody' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: |- curl --request POST \ --url 'https://api.onna.com/v1/folders' \ --header 'Authorization: Bearer ' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --data '{ "name": "My folder", "onna_parent_id": "b7c6f55fa54c4a3e821e825bd6262c0f" }' /folders/{onna_id}: delete: tags: - Folders summary: Delete Folder operationId: Folders_deleteFolder security: - OAuth2: [] description: |- Delete the folder. 📌 This also deletes all resources contained in it! parameters: - description: Unique ID of the folder. in: path name: onna_id required: true schema: title: ID description: Unique ID of the folder. type: string responses: '204': description: Successful Response '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: > curl --request DELETE \ --url 'https://api.onna.com/v1/folders/fd9f0c5339de42f9964e6afe9bf20259' \ --header 'Authorization: Bearer ' \ --header 'Accept: application/json' get: tags: - Folders summary: Retrieve Folder Info operationId: Folders_getInfo security: - OAuth2: [] description: Retrieve information related to a folder. parameters: - description: Unique ID of the folder. in: path name: onna_id required: true schema: title: ID description: Unique ID of the folder. type: string responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ReadFolderResponseBody' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: >+ curl --request GET \ --url 'https://api.onna.com/v1/folders/fd9f0c5339de42f9964e6afe9bf20259' \ --header 'Authorization: Bearer ' \ --header 'Accept: application/json' \ patch: tags: - Folders summary: Update Folder operationId: Folders_updateFolderName security: - OAuth2: [] description: >- Update the folder. For example, rename it from `My folder` to `My updated folder name`. parameters: - description: Unique ID of the folder. in: path name: onna_id required: true schema: title: ID description: Unique ID of the folder. type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateFolderRequestBody' required: true responses: '204': description: Successful Response '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: >- curl --request PATCH 'https://api.onna.com/v1/folders/fd9f0c5339de42f9964e6afe9bf20259' \ --header 'Authorization: Bearer ' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --data '{ "name": "My updated folder name" }' /health: get: tags: - Utils summary: Health Check operationId: Utils_checkServiceStatus description: Check service status, version and build. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/HealthResponseBody' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: | curl --request GET \ --url 'https://api.onna.com/v1/health' \ --header 'Authorization: Bearer ' \ --header 'Accept: application/json' \ /oauth/token: post: tags: - Authentication summary: Login operationId: Authentication_exchangeCredentials description: Exchange credentials for an access token. requestBody: content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Body_login_oauth_token_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/OauthTokenResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: |- curl --request POST \ --url 'https://api.onna.com/v1/oauth/token' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --data-urlencode 'client_id=YOUR_CLIENT_ID' \ --data-urlencode 'client_secret=YOUR_CLIENT_SECRET' \ --data-urlencode 'grant_type=client_credentials' /oauth/user: get: tags: - Authentication summary: Current User operationId: Authentication_currentUserInfo security: - OAuth2: [] description: Return information about the currently authenticated user. parameters: [] responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/CurrentUser' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' /resources/files: post: tags: - 'Resources: Files' summary: Create File operationId: ResourcesFiles_createNewFile security: - OAuth2: [] description: Create a file resource. parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateFileBody' required: true responses: '201': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/CreateFileResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' x-codeSamples: - label: cURL lang: cURL source: |- curl --request POST 'https://api.onna.com/v1/resources/files' \ --header 'Authorization: Bearer ' \ --header 'Content-Type: application/json' \ --data '{ "onna_parent_id": "0ec85634bf2c4d8db453a65551c36b8d", "ref": "Creativecommons-what-is-creative-commons_eng", "url": "https://wiki.creativecommons.org/images/3/35/Creativecommons-what-is-creative-commons_eng.pdf", "comment": "Creative Commons PDF", "creation_date": "2022-07-21T09:02:40.083388+00:00", "creator": "Creative Commons ORG", "description": "Creative Commons PDF", "name": "Creativecommons-what-is-creative-commons_eng.pdf", "path": "/images/3/35", "tags": [ "creative commons" ], "type": "pdf", "update_date": "2022-07-21T09:02:40.083388+00:00", "updater": "Bob" }' /resources/files/{onna_id}: delete: tags: - 'Resources: Files' summary: Delete File operationId: ResourcesFiles_deleteFile security: - OAuth2: [] description: Delete the file. parameters: - description: Unique ID of the file. in: path name: onna_id required: true schema: title: ID description: Unique ID of the file. type: string responses: '204': description: Successful Response '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: >- curl --request DELETE 'https://api.onna.com/v1/resources/files/fs3f0c5339de42f9964e6afe9bf20169' \ --header 'Authorization: Bearer ' \ --header 'Accept: application/json' get: tags: - 'Resources: Files' summary: Read File operationId: ResourcesFiles_getFile security: - OAuth2: [] description: Retrieve a file resource. parameters: - description: Unique ID of the file. in: path name: onna_id required: true schema: title: ID description: Unique ID of the file. type: string responses: '201': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ReadFileResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: >- curl --request GET 'https://api.onna.com/v1/resources/files/fs3f0c5339de42f9964e6afe9bf20169' \ --header 'Authorization: Bearer ' \ --header 'Accept: application/json' /resources/tickets: post: tags: - 'Resources: Tickets' summary: Create Ticket operationId: ResourcesTickets_createNewTicket security: - OAuth2: [] description: Create a ticket resource. parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateTicketBody' required: true responses: '201': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/CreateTicketResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: |- curl --request POST 'https://api.onna.com/v1/resources/tickets' \ --header 'Authorization: Bearer ' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --data '{ "name": "CS0001401", "onna_parent_id": "da72de92fef04c6a9cc5cfe018fa9cd6", "ref": "f352dc9387632300d6b0a7da0acb0b60", "url": "https://instance.servicenow.com/api/sn_customerservice/case/f352dc9387632300d6b0a7da0acb0b60" }' /resources/tickets/{onna_id}: delete: tags: - 'Resources: Tickets' summary: Delete Ticket operationId: ResourcesTickets_removeTicket security: - OAuth2: [] description: Delete the ticket. parameters: - description: Unique ID of the ticket. in: path name: onna_id required: true schema: title: ID description: Unique ID of the ticket. type: string responses: '204': description: Successful Response '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: >- curl --request DELETE 'https://api.onna.com/v1/resources/tickets/tk3f0c5339de42f9964e6afe9bf20358' \ --header 'Authorization: Bearer ' \ --header 'Accept: application/json' get: tags: - 'Resources: Tickets' summary: Read Ticket operationId: ResourcesTickets_getTicket security: - OAuth2: [] description: Retrieve a ticket resource. parameters: - description: Unique ID of the ticket. in: path name: onna_id required: true schema: title: ID description: Unique ID of the ticket. type: string responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ReadTicketResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: >- curl --request GET 'https://api.onna.com/v1/resources/tickets/tk3f0c5339de42f9964e6afe9bf20358' \ --header 'Authorization: Bearer ' \ --header 'Accept: application/json' /upload/{id}/tus: head: tags: - Upload summary: Head Resource File Resumable Upload operationId: Upload_headResourceFileResumable security: - OAuth2: [] description: >- [HEAD](https://tus.io/protocols/resumable-upload.html#head) a resource's file, for use with the TUS protocol. parameters: - in: path name: id required: true schema: title: Id type: string - description: >- The `Tus-Resumable` header is included in every request and response. ```bash Tus-Resumable: 1.0.0 ``` For more information on the headers used by TUS, see ["the protocol specification"](https://tus.io/protocols/resumable-upload.html). in: header name: tus-resumable required: false schema: title: Tus-Resumable description: >- The `Tus-Resumable` header is included in every request and response. ```bash Tus-Resumable: 1.0.0 ``` For more information on the headers used by TUS, see ["the protocol specification"](https://tus.io/protocols/resumable-upload.html). type: string responses: '200': description: Successful Response '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors405' '412': description: Precondition Failed content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors412' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: > curl -i 'https://api.onna.com/v1/upload/d3m0d3m0d3m0d3m0d3m0d3m0d3m0d3m0/tus' \ -X 'HEAD' \ -H 'Authorization: Bearer ' \ -H 'content-type: application/offset+octet-stream' \ -H 'tus-resumable: 1.0.0' \ options: tags: - Upload summary: Options Resource File operationId: Upload_optionsResourceFile security: - OAuth2: [] description: >- TUS [OPTIONS](https://tus.io/protocols/resumable-upload.html#options) may be used to gather information about the Server's current configuration. parameters: - in: path name: id required: true schema: title: Id type: string responses: '204': description: Successful Response '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: > curl -i 'https://api.onna.com/v1/upload/d3m0d3m0d3m0d3m0d3m0d3m0d3m0d3m0/tus' \ -X 'OPTIONS' \ -H 'Authorization: Bearer ' \ -H 'content-type: application/offset+octet-stream' \ patch: tags: - Upload summary: Resume Resource File Upload operationId: Upload_resumeResourceFile security: - OAuth2: [] description: >- TUS [PATCH](https://tus.io/protocols/resumable-upload.html#patch) applies partial modifications to a resource. parameters: - in: path name: id required: true schema: title: Id type: string - description: >- The `Content-Length` header indicates the size of the message body, in bytes, sent to the recipient. ```bash Content-Length: 512 ``` For more information on headers, see ["the MDN Web Docs"](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Length). in: header name: content-length required: false schema: title: Content-Length description: >- The `Content-Length` header indicates the size of the message body, in bytes, sent to the recipient. ```bash Content-Length: 512 ``` For more information on headers, see ["the MDN Web Docs"](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Length). type: string - description: >- The `Content-Type` representation header is used to indicate the original media type of the resource (prior to any content encoding applied for sending). ```bash Content-Type: application/json; charset=utf-8 ``` For more information on headers, see ["the MDN Web Docs"](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type). in: header name: content-type required: false schema: title: Content-Type description: >- The `Content-Type` representation header is used to indicate the original media type of the resource (prior to any content encoding applied for sending). ```bash Content-Type: application/json; charset=utf-8 ``` For more information on headers, see ["the MDN Web Docs"](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type). type: string - description: >- The `Upload-Offset` request and response header indicates a byte offset within a resource. The value MUST be a non-negative integer. ```bash Upload-Offset: 64 ``` For more information on the headers used by TUS, see ["the protocol specification"](https://tus.io/protocols/resumable-upload.html). in: header name: upload-offset required: false schema: title: Upload-Offset description: >- The `Upload-Offset` request and response header indicates a byte offset within a resource. The value MUST be a non-negative integer. ```bash Upload-Offset: 64 ``` For more information on the headers used by TUS, see ["the protocol specification"](https://tus.io/protocols/resumable-upload.html). type: string - description: >- The `Tus-Resumable` header is included in every request and response. ```bash Tus-Resumable: 1.0.0 ``` For more information on the headers used by TUS, see ["the protocol specification"](https://tus.io/protocols/resumable-upload.html). in: header name: tus-resumable required: false schema: title: Tus-Resumable description: >- The `Tus-Resumable` header is included in every request and response. ```bash Tus-Resumable: 1.0.0 ``` For more information on the headers used by TUS, see ["the protocol specification"](https://tus.io/protocols/resumable-upload.html). type: string responses: '200': description: Successful Response '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors405' '412': description: Precondition Failed content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors412' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' x-codeSamples: - label: cURL lang: cURL source: >- curl 'https://api.onna.com/v1/upload/d3m0d3m0d3m0d3m0d3m0d3m0d3m0d3m0/tus' \ -X 'PATCH' \ -H 'Authorization: Bearer ' \ -H 'content-type: application/offset+octet-stream' \ -H 'tus-resumable: 1.0.0' \ -H 'upload-offset: 0' \ --data $'%PDF-1.4\v3ryl0ngstr1ng0fR4wD4t4' \ --compressed post: tags: - Upload summary: Create Resource File Resumable Upload operationId: Upload_resourceFileResumableUpload security: - OAuth2: [] description: >- TUS [CREATION](https://tus.io/protocols/resumable-upload.html#creation) endpoint. The created file has the same URL as the current endpoint, since a resource can only have a single file. parameters: - in: path name: id required: true schema: title: Id type: string - description: >- The `Upload-Defer-Length` request and response header indicates that the size of the upload is not known currently and will be transferred later. Its value MUST be 1. If the length of an upload is not deferred, this header MUST be omitted. ```bash Upload-Defer-Length: 1 ``` For more information on the headers used by TUS, see ["the protocol specification"](https://tus.io/protocols/resumable-upload.html). in: header name: upload-defer-length required: false schema: title: Upload-Defer-Length description: >- The `Upload-Defer-Length` request and response header indicates that the size of the upload is not known currently and will be transferred later. Its value MUST be 1. If the length of an upload is not deferred, this header MUST be omitted. ```bash Upload-Defer-Length: 1 ``` For more information on the headers used by TUS, see ["the protocol specification"](https://tus.io/protocols/resumable-upload.html). type: string - description: >- The `Upload-Length` request and response header indicates the size of the entire upload in bytes. The value MUST be a non-negative integer. ```bash Upload-Length: 512 ``` For more information on the headers used by TUS, see ["the protocol specification"](https://tus.io/protocols/resumable-upload.html). in: header name: upload-length required: false schema: title: Upload-Length description: >- The `Upload-Length` request and response header indicates the size of the entire upload in bytes. The value MUST be a non-negative integer. ```bash Upload-Length: 512 ``` For more information on the headers used by TUS, see ["the protocol specification"](https://tus.io/protocols/resumable-upload.html). type: string - description: >- The `Upload-Metadata` request and response header MUST consist of one or more comma-separated key-value pairs. The key and value MUST be separated by a space. The key MUST NOT contain spaces and commas and MUST NOT be empty. The key SHOULD be ASCII encoded and the value MUST be Base64 encoded. All keys MUST be unique. The value MAY be empty. In these cases, the space, which would normally separate the key and the value, MAY be left out. ```bash Upload-Metadata: filename d29ybGRfZG9taW5hdGlvbl9wbGFuLnBkZg==,is_confidential ``` For more information on the headers used by TUS, see ["the protocol specification"](https://tus.io/protocols/resumable-upload.html). in: header name: upload-metadata required: false schema: title: Upload-Metadata description: >- The `Upload-Metadata` request and response header MUST consist of one or more comma-separated key-value pairs. The key and value MUST be separated by a space. The key MUST NOT contain spaces and commas and MUST NOT be empty. The key SHOULD be ASCII encoded and the value MUST be Base64 encoded. All keys MUST be unique. The value MAY be empty. In these cases, the space, which would normally separate the key and the value, MAY be left out. ```bash Upload-Metadata: filename d29ybGRfZG9taW5hdGlvbl9wbGFuLnBkZg==,is_confidential ``` For more information on the headers used by TUS, see ["the protocol specification"](https://tus.io/protocols/resumable-upload.html). type: string - description: >- The `Tus-Resumable` header is included in every request and response. ```bash Tus-Resumable: 1.0.0 ``` For more information on the headers used by TUS, see ["the protocol specification"](https://tus.io/protocols/resumable-upload.html). in: header name: tus-resumable required: false schema: title: Tus-Resumable description: >- The `Tus-Resumable` header is included in every request and response. ```bash Tus-Resumable: 1.0.0 ``` For more information on the headers used by TUS, see ["the protocol specification"](https://tus.io/protocols/resumable-upload.html). type: string responses: '200': description: Successful Response '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '405': description: Method Not Allowed content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors405' '412': description: Precondition Failed content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors412' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: >- curl 'https://api.onna.com/v1/upload/d3m0d3m0d3m0d3m0d3m0d3m0d3m0d3m0/tus' \ -X 'POST' \ -H 'Authorization: Bearer ' \ -H 'content-length: 0' \ -H 'tus-resumable: 1.0.0' \ -H 'upload-length: 44251' \ -H 'upload-metadata: name Q3JlYXRpdmVjb21tb25zLXdoYXQtaXMtY3JlYXRpdmUtY29tbW9uc19lbmcucGRm' \ --compressed put: tags: - Upload summary: Create Resource File Single Request operationId: Upload_resourceSingleRequest security: - OAuth2: [] description: Create single request for resource file upload. parameters: - in: path name: id required: true schema: title: Id type: string responses: '201': description: Successful Response '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: >- curl -i 'https://api.onna.com/v1/upload/d3m0d3m0d3m0d3m0d3m0d3m0d3m0d3m0/tus' \ -X 'PUT' \ -H 'Authorization: Bearer ' \ -H 'content-type: application/offset+octet-stream' \ /workspaces: get: tags: - Workspaces summary: List Workspaces operationId: Workspaces_list security: - OAuth2: [] description: List workspaces. parameters: - description: >- The API uses [cursoring for pagination.](https://dev.onna.com/fundamentals/api-basics/#pagination) example: '2022-02-22T11:11:11.12345' in: query name: cursor required: false schema: title: Cursor description: >- The API uses [cursoring for pagination.](https://dev.onna.com/fundamentals/api-basics/#pagination) type: string responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PageResponseBody' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: >- curl --location --request GET 'https://api.onna.com/v1/workspaces?cursor=100' \ --header 'Authorization: Bearer ' \ --header 'Accept: application/json' post: tags: - Workspaces summary: Create Workspace operationId: Workspaces_create security: - OAuth2: [] description: Create a workspace. parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateWorkspaceRequestBody' required: true responses: '201': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/CreateWorkspaceResponseBody' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: | curl --request POST \ --url 'https://api.onna.com/v1/workspaces' \ --header 'Authorization: Bearer ' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --data '{ "name": "My workspace", "description": "My personal workspace", "tags": [ "project-x", "feature" ] }' /workspaces/{onna_id}: delete: tags: - Workspaces summary: Delete Workspace operationId: Workspaces_removeWorkspace security: - OAuth2: [] description: Delete a Workspace. parameters: - description: Unique ID of the workspace. example: myworkspace-ZPM9Jf4zQ in: path name: onna_id required: true schema: title: Workspace ID description: Unique ID of the workspace. type: string responses: '204': description: Successful Response '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: >- curl --location --request DELETE 'https://api.onna.com/v1/workspaces/ws6f0c5339de42f9964e6afe9bf20469' \ --header 'Authorization: Bearer ' \ --header 'Accept: application/json' get: tags: - Workspaces summary: Retrieve Workspace Info operationId: Workspaces_getInfo security: - OAuth2: [] description: Retrieve information related to a workspace. parameters: - description: Unique ID of the workspace. example: myworkspace-ZPM9Jf4zQ in: path name: onna_id required: true schema: title: Workspace ID description: Unique ID of the workspace. type: string responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/WorkspaceResponseBody' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: >- curl --location --request GET 'https://api.onna.com/v1/workspaces/ws6f0c5339de42f9964e6afe9bf20469' \ --header 'Authorization: Bearer ' \ --header 'Accept: application/json patch: tags: - Workspaces summary: Update Workspace operationId: Workspaces_updateWorkspace security: - OAuth2: [] description: >- Update the workspace. For example, rename it from `my-workspace` to `my-new-workspace`. parameters: - description: Unique ID of the workspace. example: myworkspace-ZPM9Jf4zQ in: path name: onna_id required: true schema: title: Workspace ID description: Unique ID of the workspace. type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateWorkspaceRequestBody' required: true responses: '204': description: Successful Response '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: >- curl --location --request PATCH 'https://api.onna.com/v1/workspaces/ws6f0c5339de42f9964e6afe9bf20469' \ --header 'Authorization: Bearer ' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --data '{ "description": "A random workspace", "name": "My updated workspace", "tags": [ "random", "my-company" ] }' /workspaces/{onna_id}/customFields: get: tags: - Workspaces summary: List Workspace Custom Fields operationId: Workspaces_listCustomFields security: - OAuth2: [] description: List custom fields for a workspace. parameters: - description: Unique ID of the workspace. example: myworkspace-ZPM9Jf4zQ in: path name: onna_id required: true schema: title: Workspace ID description: Unique ID of the workspace. type: string - description: >- The API uses [cursoring for pagination.](https://dev.onna.com/fundamentals/api-basics/#pagination) example: '2022-02-22T11:11:11.12345' in: query name: cursor required: false schema: title: Cursor description: >- The API uses [cursoring for pagination.](https://dev.onna.com/fundamentals/api-basics/#pagination) type: string responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PageResponseBody' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: curl ... patch: tags: - Workspaces summary: Enable Workspace Custom Field operationId: Workspaces_enableCustomField security: - OAuth2: [] description: Enable custom field for a workspace. parameters: - description: Unique ID of the workspace. example: myworkspace-ZPM9Jf4zQ in: path name: onna_id required: true schema: title: Workspace ID description: Unique ID of the workspace. type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/EnableWorkspaceCustomFieldRequestBody' required: true responses: '204': description: Successful Response '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: curl ... /workspaces/{onna_id}/customFields/{field_id}: get: tags: - Workspaces summary: Read Workspace Custom Value operationId: Workspaces_readCustomValue security: - OAuth2: [] description: Get custom field value for a workspace. parameters: - description: Unique ID of the workspace. example: myworkspace-ZPM9Jf4zQ in: path name: onna_id required: true schema: title: Workspace ID description: Unique ID of the workspace. type: string - description: Unique ID of the field. example: cf-b20696ae9 in: path name: field_id required: true schema: title: Field ID description: Unique ID of the field. type: string responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/WorkspaceCustomValueResponseBody' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: curl ... patch: tags: - Workspaces summary: Update Workspace Custom Value operationId: Workspaces_updateCustomValue security: - OAuth2: [] description: Set custom field value for a workspace. parameters: - description: Unique ID of the workspace. example: myworkspace-ZPM9Jf4zQ in: path name: onna_id required: true schema: title: Workspace ID description: Unique ID of the workspace. type: string - description: Unique ID of the field. example: cf-b20696ae9 in: path name: field_id required: true schema: title: Field ID description: Unique ID of the field. type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateWorkspaceCustomValueRequestBody' required: true responses: '204': description: Successful Response '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors404' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors422' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/JsonApiErrors500' x-codeSamples: - label: cURL lang: cURL source: |- curl ... components: schemas: Body_login_oauth_token_post: title: Body_login_oauth_token_post properties: client_id: title: Client ID description: Unique client ID, generated in the Platform API app. type: string client_secret: title: Client Secret description: Unique client secret, generated in the Platform API app. type: string grant_type: title: Grant Type description: Use the default value. default: client_credentials type: string type: object CreateCustomFieldRequestBody: title: CreateCustomFieldRequestBody example: name: My custom field required: false type: keyword properties: description: title: Description description: Description type: string name: title: Name description: Name type: string required: title: Required description: Required type: boolean type: title: Type description: Type type: string required: - name - type - description - required type: object CreateCustomFieldResponseBody: title: CreateCustomFieldResponseBody example: onna_id: cf-my-custom-field-b20696ae9 properties: onna_id: title: Onna Id description: Alphanumeric unique identifier of the custom field. type: string required: - onna_id type: object CreateFileBody: title: CreateFileBody example: onna_parent_id: da72de92fef04c6a9cc5cfe018fa9cd6 properties: tags: title: Tags description: List of tags associated to the file in the origin. items: type: string maxItems: 1000 type: array description: title: Description description: File description. type: string version: title: Version description: Version. type: string comment: title: Comment description: Comment type of file. type: string creation_date: title: Creation Date description: Date when file was created. format: date-time type: string creator: title: Creator description: User that created the file. type: string deleter: title: Deleter description: User that deleted the file. type: string deletion_date: title: Deletion Date description: Date when file was deleted. format: date-time type: string name: title: Name description: File name. type: string onna_parent_id: title: Parent ID description: The ID of the parent Workspace or Folder. type: string path: title: Path description: Path to file, at the origin. type: string ref: title: Reference description: The Reference Number or ID for the file at the origin. type: string share_url: title: Share URL description: Link or invite to share file (at origin). type: string status: title: Status description: 'File status: Deleted, Archived, etc.' type: string type: title: Type description: Type of file. type: string update_date: title: Update Date description: Date when the file was last updated. format: date-time type: string updater: title: Updater description: The last user to update the file. type: string url: title: URL description: A Unique Resource Locator for the file at the origin. type: string required: - onna_parent_id - ref - url type: object CreateFileResponse: title: CreateFileResponse properties: onna_id: title: Onna ID description: The ID for the Onna resource. type: string required: - onna_id type: object CreateFolderRequestBody: title: CreateFolderRequestBody example: name: My folder onna_parent_id: b7c6f55fa54c4a3e821e825bd6262c0f properties: name: title: Name description: Display name of the Folder. type: string onna_parent_id: title: Parent ID description: The ID of the parent Workspace or Folder. type: string required: - name - onna_parent_id type: object CreateFolderResponseBody: title: CreateFolderResponseBody example: onna_id: 8a8ead66ba6f4862b922a911dd67c439 properties: onna_id: title: Onna ID description: Unique identifier for the Folder. type: string required: - onna_id type: object CreateTicketBody: title: CreateTicketBody example: name: CS0001401 onna_parent_id: da72de92fef04c6a9cc5cfe018fa9cd6 ref: f352dc9387632300d6b0a7da0acb0b60 url: >- https://instance.servicenow.com/api/sn_customerservice/case/f352dc9387632300d6b0a7da0acb0b60 properties: tags: title: Tags description: List of tags associated to the ticket in the origin. items: type: string maxItems: 1000 type: array description: title: Description description: Description. type: string assignee_group: title: Assignee Group description: Assignee group. type: string assignees: title: Assignees description: List of users assigned to the ticket. items: type: string maxItems: 1000 type: array author: title: Author description: The user that created the ticket. type: string category: title: Category description: Category. type: string comments: title: Comments description: List of messages associated to the ticket. items: $ref: '#/components/schemas/TicketMessage' maxItems: 5000 type: array creation_date: title: Creation Date description: Date when the ticket was created. format: date-time type: string followers: title: Followers description: List of users following the ticket. items: type: string maxItems: 1000 type: array name: title: Name description: Title. type: string onna_parent_id: title: Parent ID description: The ID of the parent Folder. type: string priority: title: Priority description: 'Priority: `high`, `medium`, `low`, etc.' type: string reactions: title: Reactions description: List of reactions. items: type: string maxItems: 1000 type: array ref: title: Reference description: The Reference Number or ID for the ticket at the origin. type: string requester: title: Requester description: The user that requested the ticket. type: string severity: title: Severity description: 'Severity: `high`, `medium`, `low`, etc.' type: string status: title: Status description: 'Ticket status: `open`, `closed`, `archived`, etc.' type: string subcategory: title: Subcategory description: Subcategory. type: string type: title: Type description: Type of ticket. type: string update_date: title: Update Date description: Date when the ticket was last updated. format: date-time type: string updater: title: Updater description: The last user to update the ticket. type: string url: title: URL description: A Unique Resource Locator for the ticket at the origin. type: string required: - onna_parent_id - ref - url - name type: object CreateTicketResponse: title: CreateTicketResponse properties: onna_id: title: Onna ID description: The ID for the Onna resource. type: string required: - onna_id type: object CreateWorkspaceRequestBody: title: CreateWorkspaceRequestBody example: tags: - project-x - feature description: My personal workspace name: My workspace properties: tags: title: Tags description: >- Labels attached to the workspace for the purpose of identification or to give meta information. items: type: string maxItems: 10000 type: array description: title: Description description: Short description of the workspace. type: string name: title: Name description: Display name of the workspace. type: string required: - name type: object CreateWorkspaceResponseBody: title: CreateWorkspaceResponseBody example: onna_id: ws6f0c5339de42f9964e6afe9bf20469 properties: onna_id: title: Onna ID description: Alphanumeric unique identifier of the workspace. type: string required: - onna_id type: object CurrentUser: title: CurrentUser example: account_id: foo id: test.user@onna.com name: Test surname: User properties: account_id: title: Account ID description: The ID of the account to which the user is associated. type: string id: title: ID description: >- Unique identifier of the current user. For most users this will be the same as the email. type: string name: title: Name description: Name of the authenticated user. type: string surname: title: Surname description: Surname of the authenticated user. type: string required: - id - account_id - name type: object CustomFieldPageResponseBody: title: CustomFieldPageResponseBody example: items: - name: My custom field onna_id: cf-my-custom-field-b20696ae9 required: false type: keyword usage_count: 0 properties: cursor: title: Cursor description: The parameter to get the next page. type: string items: title: Items description: List of results. items: $ref: '#/components/schemas/CustomFieldResponseBody' type: array required: - items type: object CustomFieldResponseBody: title: CustomFieldResponseBody example: name: My custom field onna_id: cf-my-custom-field-b20696ae9 required: false type: keyword usage_count: 0 properties: description: title: Description description: Description type: string name: title: Name description: Name type: string onna_id: title: Onna Id description: Alphanumeric unique identifier of the custom field. type: string required: title: Required description: Required type: boolean type: title: Type description: Type type: string usage_count: title: Usage Count description: Usage count type: integer required: - name - type - description - required - onna_id - usage_count type: object EnableWorkspaceCustomFieldRequestBody: title: EnableWorkspaceCustomFieldRequestBody example: onna_id: cf-b20696ae9 properties: onna_id: title: Onna ID description: Alphanumeric unique identifier of the workspace. type: string required: - onna_id type: object HTTPValidationError: title: HTTPValidationError properties: detail: title: Detail items: $ref: '#/components/schemas/ValidationError' type: array type: object HealthResponseBody: title: HealthResponseBody example: version: v1 release_id: 1.0.0 status: pass properties: version: title: Version description: API version. type: string release_id: title: Release Id description: Service version. type: string status: title: Status description: Result of the status check as 'pass' or 'fail'. type: string required: - status - version - release_id type: object JsonApiErrors401: title: JsonApiErrors401 description: 'JSON:API "error object": https://jsonapi.org/format/#errors' example: errors: - code: XX401_unauthorized id: 1bd5c180-d2c5-4bfb-9444-a3a19dd9926b status: '401' properties: title: title: Title description: >- A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem. type: string code: title: Code description: An application-specific error code, expressed as a string value. type: string detail: title: Detail description: >- A human-readable explanation specific to this occurrence of the problem. type: string id: title: ID description: A unique identifier for this particular occurrence of the problem. type: string links: title: Links description: Leads to further details about this occurrence of the problem. type: object source: title: Source description: An object containing references to the source of the error. type: object status: title: Status description: >- The HTTP status code applicable to this problem, expressed as a string value. type: string required: - status - code type: object JsonApiErrors403: title: JsonApiErrors403 description: 'JSON:API "error object": https://jsonapi.org/format/#errors' example: errors: - code: XX403_forbidden id: 1bd5c180-d2c5-4bfb-9444-a3a19dd9926bX status: '403' properties: title: title: Title description: >- A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem. type: string code: title: Code description: An application-specific error code, expressed as a string value. type: string detail: title: Detail description: >- A human-readable explanation specific to this occurrence of the problem. type: string id: title: ID description: A unique identifier for this particular occurrence of the problem. type: string links: title: Links description: Leads to further details about this occurrence of the problem. type: object source: title: Source description: An object containing references to the source of the error. type: object status: title: Status description: >- The HTTP status code applicable to this problem, expressed as a string value. type: string required: - status - code type: object JsonApiErrors404: title: JsonApiErrors404 description: 'JSON:API "error object": https://jsonapi.org/format/#errors' example: errors: - code: XX404_not_found id: 1bd5c180-d2c5-4bfb-9444-a3a19dd9926bX status: '404' properties: title: title: Title description: >- A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem. type: string code: title: Code description: An application-specific error code, expressed as a string value. type: string detail: title: Detail description: >- A human-readable explanation specific to this occurrence of the problem. type: string id: title: ID description: A unique identifier for this particular occurrence of the problem. type: string links: title: Links description: Leads to further details about this occurrence of the problem. type: object source: title: Source description: An object containing references to the source of the error. type: object status: title: Status description: >- The HTTP status code applicable to this problem, expressed as a string value. type: string required: - status - code type: object JsonApiErrors405: title: JsonApiErrors405 description: 'JSON:API "error object": https://jsonapi.org/format/#errors' example: errors: - code: XX405_method_not_allowed id: 1bd5c180-d2c5-4bfb-9444-a3a19dd9926bX status: '405' properties: title: title: Title description: >- A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem. type: string code: title: Code description: An application-specific error code, expressed as a string value. type: string detail: title: Detail description: >- A human-readable explanation specific to this occurrence of the problem. type: string id: title: ID description: A unique identifier for this particular occurrence of the problem. type: string links: title: Links description: Leads to further details about this occurrence of the problem. type: object source: title: Source description: An object containing references to the source of the error. type: object status: title: Status description: >- The HTTP status code applicable to this problem, expressed as a string value. type: string required: - status - code type: object JsonApiErrors412: title: JsonApiErrors412 description: 'JSON:API "error object": https://jsonapi.org/format/#errors' example: errors: - code: XX412_precondition_failed id: 1bd5c180-d2c5-4bfb-9444-a3a19dd9926bX status: '412' properties: title: title: Title description: >- A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem. type: string code: title: Code description: An application-specific error code, expressed as a string value. type: string detail: title: Detail description: >- A human-readable explanation specific to this occurrence of the problem. type: string id: title: ID description: A unique identifier for this particular occurrence of the problem. type: string links: title: Links description: Leads to further details about this occurrence of the problem. type: object source: title: Source description: An object containing references to the source of the error. type: object status: title: Status description: >- The HTTP status code applicable to this problem, expressed as a string value. type: string required: - status - code type: object JsonApiErrors422: title: JsonApiErrors422 description: 'JSON:API "error object": https://jsonapi.org/format/#errors' example: errors: - code: XX422_unprocessable_entity id: 1bd5c180-d2c5-4bfb-9444-a3a19dd9926bX status: '422' properties: title: title: Title description: >- A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem. type: string code: title: Code description: An application-specific error code, expressed as a string value. type: string detail: title: Detail description: >- A human-readable explanation specific to this occurrence of the problem. type: string id: title: ID description: A unique identifier for this particular occurrence of the problem. type: string links: title: Links description: Leads to further details about this occurrence of the problem. type: object source: title: Source description: An object containing references to the source of the error. type: object status: title: Status description: >- The HTTP status code applicable to this problem, expressed as a string value. type: string required: - status - code type: object JsonApiErrors500: title: JsonApiErrors500 description: 'JSON:API "error object": https://jsonapi.org/format/#errors' example: errors: - code: XX500_internal_server_error id: 1bd5c180-d2c5-4bfb-9444-a3a19dd9926bX status: '500' properties: title: title: Title description: >- A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem. type: string code: title: Code description: An application-specific error code, expressed as a string value. type: string detail: title: Detail description: >- A human-readable explanation specific to this occurrence of the problem. type: string id: title: ID description: A unique identifier for this particular occurrence of the problem. type: string links: title: Links description: Leads to further details about this occurrence of the problem. type: object source: title: Source description: An object containing references to the source of the error. type: object status: title: Status description: >- The HTTP status code applicable to this problem, expressed as a string value. type: string required: - status - code type: object OauthTokenResponse: title: OauthTokenResponse example: access_token: expires_in: 3599 token_type: bearer properties: access_token: title: Access Token type: string expires_in: title: Expires In default: 0 type: integer token_type: title: Token Type type: string required: - access_token - token_type type: object PageItemResponseBody: title: PageItemResponseBody properties: name: title: Name description: Item name. default: '' type: string onna_id: title: Onna Id description: Item identifier. type: string required: - onna_id type: object PageResponseBody: title: PageResponseBody properties: cursor: title: Cursor description: The parameter to get the next page. type: string items: title: Items description: List of results. items: $ref: '#/components/schemas/PageItemResponseBody' type: array required: - items type: object ReadFileResponse: title: ReadFileResponse example: onna_parent_id: da72de92fef04c6a9cc5cfe018fa9cd6 properties: tags: title: Tags description: List of tags associated to the file in the origin. items: type: string maxItems: 1000 type: array description: title: Description description: File description. type: string version: title: Version description: Version. type: string comment: title: Comment description: Comment type of file. type: string creation_date: title: Creation Date description: Date when file was created. format: date-time type: string creator: title: Creator description: User that created the file. type: string deleter: title: Deleter description: User that deleted the file. type: string deletion_date: title: Deletion Date description: Date when file was deleted. format: date-time type: string extension: title: Extension description: File extension. type: string filename: title: Filename description: File name. type: string md5: title: Md5 description: MD5 hash. type: string mime_type: title: Mime Type description: MIME type of file. type: string name: title: Name description: File name. type: string onna_id: title: Onna ID description: The ID for the Onna resource. type: string onna_parent_id: title: Parent ID description: The ID of the parent Workspace or Folder. type: string onna_url: title: Onna URL description: The URL for the Onna resource. type: string path: title: Path description: Path to file, at the origin. type: string ref: title: Reference description: The Reference Number or ID for the file at the origin. type: string share_url: title: Share URL description: Link or invite to share file (at origin). type: string size: title: Size description: Binary size. type: integer status: title: Status description: 'File status: Deleted, Archived, etc.' type: string type: title: Type description: Type of file. type: string update_date: title: Update Date description: Date when the file was last updated. format: date-time type: string updater: title: Updater description: The last user to update the file. type: string url: title: URL description: A Unique Resource Locator for the file at the origin. type: string required: - onna_parent_id - ref - url - onna_id - onna_url type: object ReadFolderResponseBody: title: ReadFolderResponseBody example: name: My folder onna_id: fd9f0c5339de42f9964e6afe9bf20259 properties: name: title: Name description: Display name of the Folder. type: string onna_id: title: Onna ID description: Unique identifier for the Folder. type: string required: - onna_id - name type: object ReadTicketResponse: title: ReadTicketResponse example: name: CS0001401 onna_parent_id: da72de92fef04c6a9cc5cfe018fa9cd6 ref: f352dc9387632300d6b0a7da0acb0b60 url: >- https://instance.servicenow.com/api/sn_customerservice/case/f352dc9387632300d6b0a7da0acb0b60 properties: tags: title: Tags description: List of tags associated to the ticket in the origin. items: type: string maxItems: 1000 type: array description: title: Description description: Description. type: string assignee_group: title: Assignee Group description: Assignee group. type: string assignees: title: Assignees description: List of users assigned to the ticket. items: type: string maxItems: 1000 type: array author: title: Author description: The user that created the ticket. type: string category: title: Category description: Category. type: string comments: title: Comments description: List of messages associated to the ticket. items: $ref: '#/components/schemas/TicketMessage' maxItems: 5000 type: array creation_date: title: Creation Date description: Date when the ticket was created. format: date-time type: string followers: title: Followers description: List of users following the ticket. items: type: string maxItems: 1000 type: array name: title: Name description: Title. type: string onna_id: title: Onna ID description: The ID for the Onna resource. type: string onna_parent_id: title: Parent ID description: The ID of the parent Folder. type: string onna_url: title: Onna URL description: The URL for the Onna resource. type: string priority: title: Priority description: 'Priority: `high`, `medium`, `low`, etc.' type: string reactions: title: Reactions description: List of reactions. items: type: string maxItems: 1000 type: array ref: title: Reference description: The Reference Number or ID for the ticket at the origin. type: string requester: title: Requester description: The user that requested the ticket. type: string severity: title: Severity description: 'Severity: `high`, `medium`, `low`, etc.' type: string status: title: Status description: 'Ticket status: `open`, `closed`, `archived`, etc.' type: string subcategory: title: Subcategory description: Subcategory. type: string type: title: Type description: Type of ticket. type: string update_date: title: Update Date description: Date when the ticket was last updated. format: date-time type: string updater: title: Updater description: The last user to update the ticket. type: string url: title: URL description: A Unique Resource Locator for the ticket at the origin. type: string required: - onna_parent_id - ref - url - name - onna_id - onna_url type: object TicketMessage: title: TicketMessage properties: author: title: Author type: string creation_date: title: Creation Date format: date-time type: string text: title: Text type: string required: - author - creation_date - text type: object UpdateFolderRequestBody: title: UpdateFolderRequestBody example: name: My updated folder name properties: name: title: Name description: Display name of the Folder. type: string required: - name type: object UpdateWorkspaceCustomValueRequestBody: title: UpdateWorkspaceCustomValueRequestBody example: value: My custom field value properties: value: title: Value description: Custom field value type: string required: - value type: object UpdateWorkspaceRequestBody: title: UpdateWorkspaceRequestBody example: tags: - project-x - feature description: My personal workspace name: My workspace properties: tags: title: Tags description: >- Labels attached to the workspace for the purpose of identification or to give meta information. items: type: string maxItems: 10000 type: array description: title: Description description: Short description of the workspace. type: string name: title: Name description: Display name of the workspace. type: string type: object ValidationError: title: ValidationError properties: loc: title: Location items: type: string type: array msg: title: Message type: string type: title: Error Type type: string required: - loc - msg - type type: object WorkspaceCustomValueResponseBody: title: WorkspaceCustomValueResponseBody example: onna_id: cf-b20696ae9 value: My custom field value properties: onna_id: title: Onna ID description: Alphanumeric unique identifier of the workspace. type: string value: title: Value description: Custom field value required: - onna_id type: object WorkspaceResponseBody: title: WorkspaceResponseBody example: tags: - project-x - feature description: My personal workspace name: My workspace onna_id: ws6f0c5339de42f9964e6afe9bf20469 properties: tags: title: Tags description: >- Labels attached to the workspace for the purpose of identification or to give meta information. default: [] items: type: string maxItems: 10000 type: array description: title: Description description: Short description of the workspace. default: '' type: string creation_datetime: title: Creation Datetime description: >- The date and time when the workspace was created. The format follows the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) standard, with up to microsecond precision. format: date-time type: string modification_datetime: title: Modification Datetime description: >- The date and time when the workspace was last updated. The format follows the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) standard, with up to microsecond precision. Updates include editing metadata, sharing, and tagging the workspace. format: date-time type: string name: title: Name description: Display name of the workspace. type: string onna_id: title: Onna ID description: Alphanumeric unique identifier of the workspace. type: string required: - onna_id - name type: object securitySchemes: OAuth2: description: >- The API uses API keys to [authenticate requests](https://dev.onna.com/get-started/authentication). flows: clientCredentials: scopes: {} tokenUrl: https://api.onna.com/v1/oauth/token type: oauth2 security: - OAuth2: []