Skip to main content
Glama

paperless-mcp

Paperless_ngx_REST_API.yaml268 kB
openapi: 3.0.3 info: title: Paperless-ngx REST API version: 6.0.0 (9) description: OpenAPI Spec for Paperless-ngx paths: /api/bulk_edit_objects/: post: operationId: bulk_edit_objects description: Perform a bulk edit operation on a list of objects externalDocs: description: Further documentation url: https://docs.paperless-ngx.com/api/#objects tags: - bulk_edit_objects requestBody: content: application/json: schema: $ref: '#/components/schemas/BulkEditObjectsRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/BulkEditResult' description: '' /api/config/: get: operationId: config_list description: Get the application configuration externalDocs: description: Application Configuration url: https://docs.paperless-ngx.com/configuration/ tags: - config security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ApplicationConfiguration' description: '' /api/config/{id}/: get: operationId: config_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this paperless application settings. required: true tags: - config security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ApplicationConfiguration' description: '' put: operationId: config_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this paperless application settings. required: true tags: - config requestBody: content: application/json: schema: $ref: '#/components/schemas/ApplicationConfigurationRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ApplicationConfigurationRequest' multipart/form-data: schema: $ref: '#/components/schemas/ApplicationConfigurationRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ApplicationConfiguration' description: '' patch: operationId: config_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this paperless application settings. required: true tags: - config requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedApplicationConfigurationRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedApplicationConfigurationRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedApplicationConfigurationRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ApplicationConfiguration' description: '' delete: operationId: config_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this paperless application settings. required: true tags: - config security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '204': description: No response body /api/correspondents/: get: operationId: correspondents_list parameters: - in: query name: full_perms schema: type: boolean - in: query name: id schema: type: integer - in: query name: id__in schema: type: array items: type: integer description: Multiple values may be separated by commas. explode: false style: form - in: query name: name__icontains schema: type: string - in: query name: name__iendswith schema: type: string - in: query name: name__iexact schema: type: string - in: query name: name__istartswith schema: type: string - name: ordering required: false in: query description: Which field to use when ordering the results. schema: type: string - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - correspondents security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedCorrespondentList' description: '' post: operationId: correspondents_create tags: - correspondents requestBody: content: application/json: schema: $ref: '#/components/schemas/CorrespondentRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CorrespondentRequest' multipart/form-data: schema: $ref: '#/components/schemas/CorrespondentRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Correspondent' description: '' /api/correspondents/{id}/: get: operationId: correspondents_retrieve parameters: - in: query name: full_perms schema: type: boolean - in: path name: id schema: type: integer description: A unique integer value identifying this correspondent. required: true tags: - correspondents security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Correspondent' description: '' put: operationId: correspondents_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this correspondent. required: true tags: - correspondents requestBody: content: application/json: schema: $ref: '#/components/schemas/CorrespondentRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CorrespondentRequest' multipart/form-data: schema: $ref: '#/components/schemas/CorrespondentRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Correspondent' description: '' patch: operationId: correspondents_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this correspondent. required: true tags: - correspondents requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCorrespondentRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedCorrespondentRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedCorrespondentRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Correspondent' description: '' delete: operationId: correspondents_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this correspondent. required: true tags: - correspondents security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '204': description: No response body /api/custom_fields/: get: operationId: custom_fields_list parameters: - in: query name: id schema: type: integer - in: query name: id__in schema: type: array items: type: integer description: Multiple values may be separated by commas. explode: false style: form - in: query name: name__icontains schema: type: string - in: query name: name__iendswith schema: type: string - in: query name: name__iexact schema: type: string - in: query name: name__istartswith schema: type: string - name: ordering required: false in: query description: Which field to use when ordering the results. schema: type: string - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - custom_fields security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedCustomFieldList' description: '' post: operationId: custom_fields_create tags: - custom_fields requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomFieldRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CustomFieldRequest' multipart/form-data: schema: $ref: '#/components/schemas/CustomFieldRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/CustomField' description: '' /api/custom_fields/{id}/: get: operationId: custom_fields_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this custom field. required: true tags: - custom_fields security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomField' description: '' put: operationId: custom_fields_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this custom field. required: true tags: - custom_fields requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomFieldRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CustomFieldRequest' multipart/form-data: schema: $ref: '#/components/schemas/CustomFieldRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomField' description: '' patch: operationId: custom_fields_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this custom field. required: true tags: - custom_fields requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCustomFieldRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedCustomFieldRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedCustomFieldRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomField' description: '' delete: operationId: custom_fields_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this custom field. required: true tags: - custom_fields security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '204': description: No response body /api/document_types/: get: operationId: document_types_list parameters: - in: query name: full_perms schema: type: boolean - in: query name: id schema: type: integer - in: query name: id__in schema: type: array items: type: integer description: Multiple values may be separated by commas. explode: false style: form - in: query name: name__icontains schema: type: string - in: query name: name__iendswith schema: type: string - in: query name: name__iexact schema: type: string - in: query name: name__istartswith schema: type: string - name: ordering required: false in: query description: Which field to use when ordering the results. schema: type: string - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - document_types security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedDocumentTypeList' description: '' post: operationId: document_types_create tags: - document_types requestBody: content: application/json: schema: $ref: '#/components/schemas/DocumentTypeRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/DocumentTypeRequest' multipart/form-data: schema: $ref: '#/components/schemas/DocumentTypeRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/DocumentType' description: '' /api/document_types/{id}/: get: operationId: document_types_retrieve parameters: - in: query name: full_perms schema: type: boolean - in: path name: id schema: type: integer description: A unique integer value identifying this document type. required: true tags: - document_types security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DocumentType' description: '' put: operationId: document_types_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this document type. required: true tags: - document_types requestBody: content: application/json: schema: $ref: '#/components/schemas/DocumentTypeRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/DocumentTypeRequest' multipart/form-data: schema: $ref: '#/components/schemas/DocumentTypeRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DocumentType' description: '' patch: operationId: document_types_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this document type. required: true tags: - document_types requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedDocumentTypeRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedDocumentTypeRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedDocumentTypeRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DocumentType' description: '' delete: operationId: document_types_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this document type. required: true tags: - document_types security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '204': description: No response body /api/documents/: get: operationId: documents_list description: Pass a user object to serializer parameters: - in: query name: added__date__gt schema: type: string format: date - in: query name: added__date__gte schema: type: string format: date - in: query name: added__date__lt schema: type: string format: date - in: query name: added__date__lte schema: type: string format: date - in: query name: added__day schema: type: number - in: query name: added__gt schema: type: string format: date-time - in: query name: added__gte schema: type: string format: date-time - in: query name: added__lt schema: type: string format: date-time - in: query name: added__lte schema: type: string format: date-time - in: query name: added__month schema: type: number - in: query name: added__year schema: type: number - in: query name: archive_serial_number schema: type: integer - in: query name: archive_serial_number__gt schema: type: integer - in: query name: archive_serial_number__gte schema: type: integer - in: query name: archive_serial_number__isnull schema: type: boolean - in: query name: archive_serial_number__lt schema: type: integer - in: query name: archive_serial_number__lte schema: type: integer - in: query name: checksum__icontains schema: type: string - in: query name: checksum__iendswith schema: type: string - in: query name: checksum__iexact schema: type: string - in: query name: checksum__istartswith schema: type: string - in: query name: content__icontains schema: type: string - in: query name: content__iendswith schema: type: string - in: query name: content__iexact schema: type: string - in: query name: content__istartswith schema: type: string - in: query name: correspondent__id schema: type: integer - in: query name: correspondent__id__in schema: type: array items: type: integer description: Multiple values may be separated by commas. explode: false style: form - in: query name: correspondent__id__none schema: type: integer - in: query name: correspondent__isnull schema: type: boolean - in: query name: correspondent__name__icontains schema: type: string - in: query name: correspondent__name__iendswith schema: type: string - in: query name: correspondent__name__iexact schema: type: string - in: query name: correspondent__name__istartswith schema: type: string - in: query name: created__date__gt schema: type: string format: date - in: query name: created__date__gte schema: type: string format: date - in: query name: created__date__lt schema: type: string format: date - in: query name: created__date__lte schema: type: string format: date - in: query name: created__day schema: type: number - in: query name: created__gt schema: type: string format: date - in: query name: created__gte schema: type: string format: date - in: query name: created__lt schema: type: string format: date - in: query name: created__lte schema: type: string format: date - in: query name: created__month schema: type: number - in: query name: created__year schema: type: number - in: query name: custom_field_query schema: type: string minLength: 1 - in: query name: custom_fields__icontains schema: type: string minLength: 1 - in: query name: custom_fields__id__all schema: type: integer - in: query name: custom_fields__id__in schema: type: integer - in: query name: custom_fields__id__none schema: type: integer - in: query name: document_type__id schema: type: integer - in: query name: document_type__id__in schema: type: array items: type: integer description: Multiple values may be separated by commas. explode: false style: form - in: query name: document_type__id__none schema: type: integer - in: query name: document_type__isnull schema: type: boolean - in: query name: document_type__name__icontains schema: type: string - in: query name: document_type__name__iendswith schema: type: string - in: query name: document_type__name__iexact schema: type: string - in: query name: document_type__name__istartswith schema: type: string - in: query name: fields schema: type: array items: type: string - in: query name: full_perms schema: type: boolean - in: query name: has_custom_fields schema: type: boolean description: Has custom field - in: query name: id schema: type: integer - in: query name: id__in schema: type: array items: type: integer description: Multiple values may be separated by commas. explode: false style: form - in: query name: is_in_inbox schema: type: boolean - in: query name: is_tagged schema: type: boolean description: Is tagged - in: query name: mime_type schema: type: string - in: query name: modified__date__gt schema: type: string format: date - in: query name: modified__date__gte schema: type: string format: date - in: query name: modified__date__lt schema: type: string format: date - in: query name: modified__date__lte schema: type: string format: date - in: query name: modified__day schema: type: number - in: query name: modified__gt schema: type: string format: date-time - in: query name: modified__gte schema: type: string format: date-time - in: query name: modified__lt schema: type: string format: date-time - in: query name: modified__lte schema: type: string format: date-time - in: query name: modified__month schema: type: number - in: query name: modified__year schema: type: number - name: ordering required: false in: query description: Which field to use when ordering the results. schema: type: string - in: query name: original_filename__icontains schema: type: string - in: query name: original_filename__iendswith schema: type: string - in: query name: original_filename__iexact schema: type: string - in: query name: original_filename__istartswith schema: type: string - in: query name: owner__id schema: type: integer - in: query name: owner__id__in schema: type: array items: type: integer description: Multiple values may be separated by commas. explode: false style: form - in: query name: owner__id__none schema: type: integer - in: query name: owner__isnull schema: type: boolean - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer - name: search required: false in: query description: A search term. schema: type: string - in: query name: shared_by__id schema: type: boolean - in: query name: storage_path__id schema: type: integer - in: query name: storage_path__id__in schema: type: array items: type: integer description: Multiple values may be separated by commas. explode: false style: form - in: query name: storage_path__id__none schema: type: integer - in: query name: storage_path__isnull schema: type: boolean - in: query name: storage_path__name__icontains schema: type: string - in: query name: storage_path__name__iendswith schema: type: string - in: query name: storage_path__name__iexact schema: type: string - in: query name: storage_path__name__istartswith schema: type: string - in: query name: tags__id schema: type: integer - in: query name: tags__id__all schema: type: integer - in: query name: tags__id__in schema: type: integer - in: query name: tags__id__none schema: type: integer - in: query name: tags__name__icontains schema: type: string - in: query name: tags__name__iendswith schema: type: string - in: query name: tags__name__iexact schema: type: string - in: query name: tags__name__istartswith schema: type: string - in: query name: title__icontains schema: type: string - in: query name: title__iendswith schema: type: string - in: query name: title__iexact schema: type: string - in: query name: title__istartswith schema: type: string - in: query name: title_content schema: type: string minLength: 1 tags: - documents security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedDocumentList' description: '' /api/documents/{id}/: get: operationId: documents_retrieve description: Retrieve a single document parameters: - in: query name: fields schema: type: array items: type: string - in: query name: full_perms schema: type: boolean - in: path name: id schema: type: integer description: A unique integer value identifying this document. required: true tags: - documents security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Document' description: '' '400': description: No response body put: operationId: documents_update description: Pass a user object to serializer parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this document. required: true tags: - documents requestBody: content: application/json: schema: $ref: '#/components/schemas/DocumentRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/DocumentRequest' multipart/form-data: schema: $ref: '#/components/schemas/DocumentRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Document' description: '' patch: operationId: documents_partial_update description: Pass a user object to serializer parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this document. required: true tags: - documents requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedDocumentRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedDocumentRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedDocumentRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Document' description: '' delete: operationId: documents_destroy description: Pass a user object to serializer parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this document. required: true tags: - documents security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '204': description: No response body /api/documents/{id}/download/: get: operationId: documents_download_retrieve description: Download the document parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this document. required: true - in: query name: original schema: type: boolean tags: - documents security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: string format: binary description: '' /api/documents/{id}/email/: post: operationId: documents_email_create description: Email the document to one or more recipients as an attachment. parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this document. required: true tags: - documents requestBody: content: application/json: schema: $ref: '#/components/schemas/EmailRequestRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/EmailRequestRequest' multipart/form-data: schema: $ref: '#/components/schemas/EmailRequestRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/EmailResponse' description: '' '400': description: No response body '403': description: No response body '404': description: No response body '500': description: No response body /api/documents/{id}/history/: get: operationId: documents_history_list description: View the document history parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this document. required: true - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - documents security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedLogEntryList' description: '' '400': description: No response body '403': description: No response body '404': description: No response body /api/documents/{id}/metadata/: get: operationId: documents_metadata_retrieve description: View the document metadata parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this document. required: true tags: - documents security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Metadata' description: '' '400': description: No response body '403': description: No response body '404': description: No response body /api/documents/{id}/notes/: get: operationId: documents_notes_list description: View, add, or delete notes for the document parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this document. required: true - in: query name: id schema: type: integer description: Note ID to delete (used only for DELETE requests) - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - documents security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedNotesList' description: '' '400': description: No response body '403': description: No response body '404': description: No response body post: operationId: documents_notes_create description: View, add, or delete notes for the document parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this document. required: true - in: query name: id schema: type: integer description: Note ID to delete (used only for DELETE requests) - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - documents requestBody: content: application/json: schema: $ref: '#/components/schemas/NoteCreateRequestRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/NoteCreateRequestRequest' multipart/form-data: schema: $ref: '#/components/schemas/NoteCreateRequestRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedNotesList' description: '' '400': description: No response body '403': description: No response body '404': description: No response body delete: operationId: documents_notes_destroy description: View, add, or delete notes for the document parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this document. required: true - in: query name: id schema: type: integer description: Note ID to delete (used only for DELETE requests) - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - documents security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedNotesList' description: '' '400': description: No response body '403': description: No response body '404': description: No response body /api/documents/{id}/preview/: get: operationId: documents_preview_retrieve description: View the document preview parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this document. required: true tags: - documents security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: string format: binary description: '' /api/documents/{id}/share_links/: get: operationId: document_share_links description: View share links for the document parameters: - in: path name: id schema: type: string required: true tags: - documents security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: array items: type: object properties: id: type: integer created: type: string format: date-time expiration: type: string format: date-time slug: type: string description: '' '400': description: No response body '403': description: No response body '404': description: No response body /api/documents/{id}/suggestions/: get: operationId: documents_suggestions_retrieve description: View suggestions for the document parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this document. required: true tags: - documents security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Suggestions' description: '' '400': description: No response body '403': description: No response body '404': description: No response body /api/documents/{id}/thumb/: get: operationId: documents_thumb_retrieve description: View the document thumbnail parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this document. required: true tags: - documents security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: string format: binary description: '' /api/documents/bulk_download/: post: operationId: documents_bulk_download_create tags: - documents requestBody: content: application/json: schema: $ref: '#/components/schemas/BulkDownloadRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/BulkDownload' description: '' /api/documents/bulk_edit/: post: operationId: bulk_edit description: Perform a bulk edit operation on a list of documents externalDocs: description: Further documentation url: https://docs.paperless-ngx.com/api/#bulk-editing tags: - documents requestBody: content: application/json: schema: $ref: '#/components/schemas/BulkEditRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/BulkEditDocumentsResult' description: '' /api/documents/next_asn/: get: operationId: documents_next_asn_retrieve description: Get the next available Archive Serial Number (ASN) for a new document tags: - documents security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: integer description: '' /api/documents/post_document/: post: operationId: documents_post_document_create description: Upload a document via the API externalDocs: description: Further documentation url: https://docs.paperless-ngx.com/api/#file-uploads tags: - documents requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/PostDocumentRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: string description: '' /api/documents/selection_data/: post: operationId: documents_selection_data_create description: Get selection data for the selected documents tags: - documents requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/DocumentListRequest' application/json: schema: $ref: '#/components/schemas/DocumentListRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SelectionData' description: '' /api/groups/: get: operationId: groups_list parameters: - in: query name: name__icontains schema: type: string - in: query name: name__iendswith schema: type: string - in: query name: name__iexact schema: type: string - in: query name: name__istartswith schema: type: string - name: ordering required: false in: query description: Which field to use when ordering the results. schema: type: string - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - groups security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedGroupList' description: '' post: operationId: groups_create tags: - groups requestBody: content: application/json: schema: $ref: '#/components/schemas/GroupRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/GroupRequest' multipart/form-data: schema: $ref: '#/components/schemas/GroupRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Group' description: '' /api/groups/{id}/: get: operationId: groups_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this group. required: true tags: - groups security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Group' description: '' put: operationId: groups_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this group. required: true tags: - groups requestBody: content: application/json: schema: $ref: '#/components/schemas/GroupRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/GroupRequest' multipart/form-data: schema: $ref: '#/components/schemas/GroupRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Group' description: '' patch: operationId: groups_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this group. required: true tags: - groups requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedGroupRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedGroupRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedGroupRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Group' description: '' delete: operationId: groups_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this group. required: true tags: - groups security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '204': description: No response body /api/logs/: get: operationId: logs_list description: Logs view tags: - logs security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: array items: type: string description: '' /api/logs/{id}/: get: operationId: retrieve_log description: Single log view parameters: - in: path name: id schema: type: string required: true tags: - logs security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: array items: type: string description: '' '404': description: No response body /api/mail_accounts/: get: operationId: mail_accounts_list parameters: - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - mail_accounts security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedMailAccountList' description: '' post: operationId: mail_accounts_create tags: - mail_accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/MailAccountRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/MailAccountRequest' multipart/form-data: schema: $ref: '#/components/schemas/MailAccountRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/MailAccount' description: '' /api/mail_accounts/{id}/: get: operationId: mail_accounts_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this mail account. required: true tags: - mail_accounts security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MailAccount' description: '' put: operationId: mail_accounts_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this mail account. required: true tags: - mail_accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/MailAccountRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/MailAccountRequest' multipart/form-data: schema: $ref: '#/components/schemas/MailAccountRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MailAccount' description: '' patch: operationId: mail_accounts_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this mail account. required: true tags: - mail_accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedMailAccountRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedMailAccountRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedMailAccountRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MailAccount' description: '' delete: operationId: mail_accounts_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this mail account. required: true tags: - mail_accounts security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '204': description: No response body /api/mail_accounts/{id}/process/: post: operationId: mail_account_process description: Manually process the selected mail account for new messages. parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this mail account. required: true tags: - mail_accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/MailAccountRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/MailAccountRequest' multipart/form-data: schema: $ref: '#/components/schemas/MailAccountRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MailAccountProcessResponse' description: '' '404': description: No response body /api/mail_accounts/test/: post: operationId: mail_account_test description: Test a mail account tags: - mail_accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/MailAccountRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/MailAccountRequest' multipart/form-data: schema: $ref: '#/components/schemas/MailAccountRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MailAccountTestResponse' description: '' '400': content: application/json: schema: type: string description: '' /api/mail_rules/: get: operationId: mail_rules_list parameters: - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - mail_rules security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedMailRuleList' description: '' post: operationId: mail_rules_create tags: - mail_rules requestBody: content: application/json: schema: $ref: '#/components/schemas/MailRuleRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/MailRuleRequest' multipart/form-data: schema: $ref: '#/components/schemas/MailRuleRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/MailRule' description: '' /api/mail_rules/{id}/: get: operationId: mail_rules_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this mail rule. required: true tags: - mail_rules security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MailRule' description: '' put: operationId: mail_rules_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this mail rule. required: true tags: - mail_rules requestBody: content: application/json: schema: $ref: '#/components/schemas/MailRuleRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/MailRuleRequest' multipart/form-data: schema: $ref: '#/components/schemas/MailRuleRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MailRule' description: '' patch: operationId: mail_rules_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this mail rule. required: true tags: - mail_rules requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedMailRuleRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedMailRuleRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedMailRuleRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MailRule' description: '' delete: operationId: mail_rules_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this mail rule. required: true tags: - mail_rules security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '204': description: No response body /api/oauth/callback/: get: operationId: oauth_callback_retrieve description: Callback view for OAuth2 authentication tags: - oauth security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': description: No response body /api/profile/: get: operationId: profile_retrieve description: User profile view, only available when logged in tags: - profile security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Profile' description: '' patch: operationId: profile_partial_update description: User profile view, only available when logged in tags: - profile requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProfileRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedProfileRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedProfileRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Profile' description: '' /api/profile/disconnect_social_account/: post: operationId: profile_disconnect_social_account_create description: Disconnects a social account provider from the user account tags: - profile requestBody: content: application/json: schema: type: object properties: id: type: integer required: - id security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: integer description: '' '400': content: application/json: schema: type: string description: '' /api/profile/generate_auth_token/: post: operationId: profile_generate_auth_token_create description: |- Generates (or re-generates) an auth token, requires a logged in user unlike the default DRF endpoint tags: - profile security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: string description: '' /api/profile/social_account_providers/: get: operationId: profile_social_account_providers_retrieve description: List of social account providers tags: - profile security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: object additionalProperties: {} description: '' /api/profile/totp/: get: operationId: profile_totp_retrieve description: Generates a new TOTP secret and returns the URL and SVG tags: - profile security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: object additionalProperties: {} description: '' post: operationId: profile_totp_create description: Validates a TOTP code and activates the TOTP authenticator tags: - profile requestBody: content: application/json: schema: type: object properties: secret: type: string code: type: string required: - secret - code security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: object additionalProperties: {} description: '' delete: operationId: profile_totp_destroy description: Deactivates the TOTP authenticator tags: - profile security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: boolean description: '' '404': content: application/json: schema: type: string description: '' /api/remote_version/: get: operationId: remote_version_retrieve description: Get the current version of the Paperless-NGX server tags: - remote_version security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] - {} responses: '200': content: application/json: schema: type: object additionalProperties: {} description: '' /api/saved_views/: get: operationId: saved_views_list parameters: - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - saved_views security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedSavedViewList' description: '' post: operationId: saved_views_create tags: - saved_views requestBody: content: application/json: schema: $ref: '#/components/schemas/SavedViewRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SavedViewRequest' multipart/form-data: schema: $ref: '#/components/schemas/SavedViewRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/SavedView' description: '' /api/saved_views/{id}/: get: operationId: saved_views_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this saved view. required: true tags: - saved_views security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SavedView' description: '' put: operationId: saved_views_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this saved view. required: true tags: - saved_views requestBody: content: application/json: schema: $ref: '#/components/schemas/SavedViewRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/SavedViewRequest' multipart/form-data: schema: $ref: '#/components/schemas/SavedViewRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SavedView' description: '' patch: operationId: saved_views_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this saved view. required: true tags: - saved_views requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedSavedViewRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedSavedViewRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedSavedViewRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SavedView' description: '' delete: operationId: saved_views_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this saved view. required: true tags: - saved_views security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '204': description: No response body /api/search/: get: operationId: search_retrieve description: Global search parameters: - in: query name: db_only schema: type: boolean description: Search only the database - in: query name: query schema: type: string description: Query to search for required: true tags: - search security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SearchResult' description: '' /api/search/autocomplete/: get: operationId: search_autocomplete_list description: Get a list of all available tags parameters: - in: query name: limit schema: type: integer description: Number of completions to return - in: query name: term schema: type: string description: Term to search for tags: - search security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: array items: type: string description: '' /api/share_links/: get: operationId: share_links_list parameters: - in: query name: created__date__gt schema: type: string format: date - in: query name: created__date__gte schema: type: string format: date - in: query name: created__date__lt schema: type: string format: date - in: query name: created__date__lte schema: type: string format: date - in: query name: created__day schema: type: number - in: query name: created__gt schema: type: string format: date-time - in: query name: created__gte schema: type: string format: date-time - in: query name: created__lt schema: type: string format: date-time - in: query name: created__lte schema: type: string format: date-time - in: query name: created__month schema: type: number - in: query name: created__year schema: type: number - in: query name: expiration__date__gt schema: type: string format: date - in: query name: expiration__date__gte schema: type: string format: date - in: query name: expiration__date__lt schema: type: string format: date - in: query name: expiration__date__lte schema: type: string format: date - in: query name: expiration__day schema: type: number - in: query name: expiration__gt schema: type: string format: date-time - in: query name: expiration__gte schema: type: string format: date-time - in: query name: expiration__lt schema: type: string format: date-time - in: query name: expiration__lte schema: type: string format: date-time - in: query name: expiration__month schema: type: number - in: query name: expiration__year schema: type: number - name: ordering required: false in: query description: Which field to use when ordering the results. schema: type: string - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - share_links security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedShareLinkList' description: '' post: operationId: share_links_create tags: - share_links requestBody: content: application/json: schema: $ref: '#/components/schemas/ShareLinkRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ShareLinkRequest' multipart/form-data: schema: $ref: '#/components/schemas/ShareLinkRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ShareLink' description: '' /api/share_links/{id}/: get: operationId: share_links_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this share link. required: true tags: - share_links security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ShareLink' description: '' put: operationId: share_links_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this share link. required: true tags: - share_links requestBody: content: application/json: schema: $ref: '#/components/schemas/ShareLinkRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ShareLinkRequest' multipart/form-data: schema: $ref: '#/components/schemas/ShareLinkRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ShareLink' description: '' patch: operationId: share_links_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this share link. required: true tags: - share_links requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedShareLinkRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedShareLinkRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedShareLinkRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ShareLink' description: '' delete: operationId: share_links_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this share link. required: true tags: - share_links security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '204': description: No response body /api/statistics/: get: operationId: statistics_retrieve description: Get statistics for the current user tags: - statistics security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: object additionalProperties: {} description: '' /api/status/: get: operationId: status_retrieve description: Get the current system status of the Paperless-NGX server tags: - status security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SystemStatus' description: '' /api/storage_paths/: get: operationId: storage_paths_list parameters: - in: query name: full_perms schema: type: boolean - in: query name: id schema: type: integer - in: query name: id__in schema: type: array items: type: integer description: Multiple values may be separated by commas. explode: false style: form - in: query name: name__icontains schema: type: string - in: query name: name__iendswith schema: type: string - in: query name: name__iexact schema: type: string - in: query name: name__istartswith schema: type: string - name: ordering required: false in: query description: Which field to use when ordering the results. schema: type: string - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer - in: query name: path__icontains schema: type: string - in: query name: path__iendswith schema: type: string - in: query name: path__iexact schema: type: string - in: query name: path__istartswith schema: type: string tags: - storage_paths security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedStoragePathList' description: '' post: operationId: storage_paths_create tags: - storage_paths requestBody: content: application/json: schema: $ref: '#/components/schemas/StoragePathRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/StoragePathRequest' multipart/form-data: schema: $ref: '#/components/schemas/StoragePathRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/StoragePath' description: '' /api/storage_paths/{id}/: get: operationId: storage_paths_retrieve parameters: - in: query name: full_perms schema: type: boolean - in: path name: id schema: type: integer description: A unique integer value identifying this storage path. required: true tags: - storage_paths security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/StoragePath' description: '' put: operationId: storage_paths_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this storage path. required: true tags: - storage_paths requestBody: content: application/json: schema: $ref: '#/components/schemas/StoragePathRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/StoragePathRequest' multipart/form-data: schema: $ref: '#/components/schemas/StoragePathRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/StoragePath' description: '' patch: operationId: storage_paths_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this storage path. required: true tags: - storage_paths requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedStoragePathRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedStoragePathRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedStoragePathRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/StoragePath' description: '' delete: operationId: storage_paths_destroy description: |- When a storage path is deleted, see if documents using it require a rename/move parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this storage path. required: true tags: - storage_paths security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '204': description: No response body /api/storage_paths/test/: post: operationId: storage_paths_test_create description: Test storage path against a document tags: - storage_paths requestBody: content: application/json: schema: $ref: '#/components/schemas/StoragePathRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/StoragePathRequest' multipart/form-data: schema: $ref: '#/components/schemas/StoragePathRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/StoragePath' description: '' /api/tags/: get: operationId: tags_list parameters: - in: query name: full_perms schema: type: boolean - in: query name: id schema: type: integer - in: query name: id__in schema: type: array items: type: integer description: Multiple values may be separated by commas. explode: false style: form - in: query name: name__icontains schema: type: string - in: query name: name__iendswith schema: type: string - in: query name: name__iexact schema: type: string - in: query name: name__istartswith schema: type: string - name: ordering required: false in: query description: Which field to use when ordering the results. schema: type: string - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - tags security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedTagList' description: '' post: operationId: tags_create tags: - tags requestBody: content: application/json: schema: $ref: '#/components/schemas/TagRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/TagRequest' multipart/form-data: schema: $ref: '#/components/schemas/TagRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Tag' description: '' /api/tags/{id}/: get: operationId: tags_retrieve parameters: - in: query name: full_perms schema: type: boolean - in: path name: id schema: type: integer description: A unique integer value identifying this tag. required: true tags: - tags security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Tag' description: '' put: operationId: tags_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this tag. required: true tags: - tags requestBody: content: application/json: schema: $ref: '#/components/schemas/TagRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/TagRequest' multipart/form-data: schema: $ref: '#/components/schemas/TagRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Tag' description: '' patch: operationId: tags_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this tag. required: true tags: - tags requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedTagRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedTagRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedTagRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Tag' description: '' delete: operationId: tags_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this tag. required: true tags: - tags security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '204': description: No response body /api/tasks/: get: operationId: tasks_list parameters: - in: query name: acknowledged schema: type: boolean description: Acknowledged - name: ordering required: false in: query description: Which field to use when ordering the results. schema: type: string - in: query name: status schema: type: string title: Task State enum: - FAILURE - PENDING - RECEIVED - RETRY - REVOKED - STARTED - SUCCESS description: |- Current state of the task being run * `FAILURE` - FAILURE * `PENDING` - PENDING * `RECEIVED` - RECEIVED * `RETRY` - RETRY * `REVOKED` - REVOKED * `STARTED` - STARTED * `SUCCESS` - SUCCESS - in: query name: task_name schema: type: string nullable: true enum: - check_sanity - consume_file - index_optimize - train_classifier description: |- Name of the task that was run * `consume_file` - Consume File * `train_classifier` - Train Classifier * `check_sanity` - Check Sanity * `index_optimize` - Index Optimize - in: query name: type schema: type: string title: Task Type enum: - auto_task - manual_task - scheduled_task description: |- The type of task that was run * `auto_task` - Auto Task * `scheduled_task` - Scheduled Task * `manual_task` - Manual Task tags: - tasks security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/TasksView' description: '' /api/tasks/{id}/: get: operationId: tasks_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this paperless task. required: true tags: - tasks security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/TasksView' description: '' /api/tasks/acknowledge/: post: operationId: acknowledge_tasks description: Acknowledge a list of tasks tags: - tasks requestBody: content: application/json: schema: type: object properties: tasks: type: array items: type: integer required: - tasks security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AcknowledgeTasks' description: '' '400': description: No response body /api/tasks/run/: post: operationId: tasks_run_create tags: - tasks requestBody: content: application/json: schema: $ref: '#/components/schemas/TasksViewRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/TasksViewRequest' multipart/form-data: schema: $ref: '#/components/schemas/TasksViewRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/TasksView' description: '' /api/token/: post: operationId: token_create tags: - token requestBody: content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PaperlessAuthTokenRequest' multipart/form-data: schema: $ref: '#/components/schemas/PaperlessAuthTokenRequest' application/json: schema: $ref: '#/components/schemas/PaperlessAuthTokenRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaperlessAuthToken' description: '' /api/trash/: get: operationId: trash_list parameters: - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - trash security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': description: No response body post: operationId: trash_create tags: - trash requestBody: content: application/json: schema: $ref: '#/components/schemas/TrashRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/TrashRequest' multipart/form-data: schema: $ref: '#/components/schemas/TrashRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': description: No response body /api/ui_settings/: get: operationId: ui_settings_retrieve tags: - ui_settings security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UiSettingsView' description: '' post: operationId: ui_settings_create tags: - ui_settings requestBody: content: application/json: schema: $ref: '#/components/schemas/UiSettingsViewRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/UiSettingsViewRequest' multipart/form-data: schema: $ref: '#/components/schemas/UiSettingsViewRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UiSettingsView' description: '' /api/users/: get: operationId: users_list parameters: - name: ordering required: false in: query description: Which field to use when ordering the results. schema: type: string - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer - in: query name: username__icontains schema: type: string - in: query name: username__iendswith schema: type: string - in: query name: username__iexact schema: type: string - in: query name: username__istartswith schema: type: string tags: - users security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedUserList' description: '' post: operationId: users_create tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/UserRequest' multipart/form-data: schema: $ref: '#/components/schemas/UserRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/User' description: '' /api/users/{id}/: get: operationId: users_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this user. required: true tags: - users security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: '' put: operationId: users_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this user. required: true tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/UserRequest' multipart/form-data: schema: $ref: '#/components/schemas/UserRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: '' patch: operationId: users_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this user. required: true tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedUserRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedUserRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedUserRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: '' delete: operationId: users_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this user. required: true tags: - users security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '204': description: No response body /api/users/{id}/deactivate_totp/: post: operationId: users_deactivate_totp_create parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this user. required: true tags: - users security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: type: boolean description: '' '404': content: application/json: schema: type: string description: '' /api/workflow_actions/: get: operationId: workflow_actions_list parameters: - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - workflow_actions security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedWorkflowActionList' description: '' post: operationId: workflow_actions_create tags: - workflow_actions requestBody: content: application/json: schema: $ref: '#/components/schemas/WorkflowActionRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/WorkflowActionRequest' multipart/form-data: schema: $ref: '#/components/schemas/WorkflowActionRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/WorkflowAction' description: '' /api/workflow_actions/{id}/: get: operationId: workflow_actions_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this workflow action. required: true tags: - workflow_actions security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowAction' description: '' put: operationId: workflow_actions_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this workflow action. required: true tags: - workflow_actions requestBody: content: application/json: schema: $ref: '#/components/schemas/WorkflowActionRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/WorkflowActionRequest' multipart/form-data: schema: $ref: '#/components/schemas/WorkflowActionRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowAction' description: '' patch: operationId: workflow_actions_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this workflow action. required: true tags: - workflow_actions requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedWorkflowActionRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedWorkflowActionRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedWorkflowActionRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowAction' description: '' delete: operationId: workflow_actions_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this workflow action. required: true tags: - workflow_actions security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '204': description: No response body /api/workflow_triggers/: get: operationId: workflow_triggers_list parameters: - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - workflow_triggers security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedWorkflowTriggerList' description: '' post: operationId: workflow_triggers_create tags: - workflow_triggers requestBody: content: application/json: schema: $ref: '#/components/schemas/WorkflowTriggerRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/WorkflowTriggerRequest' multipart/form-data: schema: $ref: '#/components/schemas/WorkflowTriggerRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/WorkflowTrigger' description: '' /api/workflow_triggers/{id}/: get: operationId: workflow_triggers_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this workflow trigger. required: true tags: - workflow_triggers security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowTrigger' description: '' put: operationId: workflow_triggers_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this workflow trigger. required: true tags: - workflow_triggers requestBody: content: application/json: schema: $ref: '#/components/schemas/WorkflowTriggerRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/WorkflowTriggerRequest' multipart/form-data: schema: $ref: '#/components/schemas/WorkflowTriggerRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowTrigger' description: '' patch: operationId: workflow_triggers_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this workflow trigger. required: true tags: - workflow_triggers requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedWorkflowTriggerRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedWorkflowTriggerRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedWorkflowTriggerRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowTrigger' description: '' delete: operationId: workflow_triggers_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this workflow trigger. required: true tags: - workflow_triggers security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '204': description: No response body /api/workflows/: get: operationId: workflows_list parameters: - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer tags: - workflows security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedWorkflowList' description: '' post: operationId: workflows_create tags: - workflows requestBody: content: application/json: schema: $ref: '#/components/schemas/WorkflowRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/WorkflowRequest' multipart/form-data: schema: $ref: '#/components/schemas/WorkflowRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Workflow' description: '' /api/workflows/{id}/: get: operationId: workflows_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this workflow. required: true tags: - workflows security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Workflow' description: '' put: operationId: workflows_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this workflow. required: true tags: - workflows requestBody: content: application/json: schema: $ref: '#/components/schemas/WorkflowRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/WorkflowRequest' multipart/form-data: schema: $ref: '#/components/schemas/WorkflowRequest' required: true security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Workflow' description: '' patch: operationId: workflows_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this workflow. required: true tags: - workflows requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedWorkflowRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedWorkflowRequest' multipart/form-data: schema: $ref: '#/components/schemas/PatchedWorkflowRequest' security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Workflow' description: '' delete: operationId: workflows_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this workflow. required: true tags: - workflows security: - PaperelessBasicAuthentication: [] - tokenAuth: [] - cookieAuth: [] responses: '204': description: No response body components: schemas: AccountTypeEnum: enum: - 1 - 2 - 3 type: integer description: |- * `1` - IMAP * `2` - Gmail OAuth * `3` - Outlook OAuth AcknowledgeTasks: type: object properties: result: type: integer required: - result Actor: type: object properties: id: type: integer username: type: string required: - id - username ApplicationConfiguration: type: object properties: id: type: integer readOnly: true user_args: nullable: true barcode_tag_mapping: nullable: true output_type: nullable: true title: Sets the output PDF type oneOf: - $ref: '#/components/schemas/OutputTypeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' pages: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 nullable: true title: Do OCR from page 1 to this value language: type: string nullable: true title: Do OCR using these languages maxLength: 32 mode: nullable: true title: Sets the OCR mode oneOf: - $ref: '#/components/schemas/ModeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' skip_archive_file: nullable: true title: Controls the generation of an archive file oneOf: - $ref: '#/components/schemas/SkipArchiveFileEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' image_dpi: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 nullable: true title: Sets image DPI fallback value unpaper_clean: nullable: true title: Controls the unpaper cleaning oneOf: - $ref: '#/components/schemas/UnpaperCleanEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' deskew: type: boolean nullable: true title: Enables deskew rotate_pages: type: boolean nullable: true title: Enables page rotation rotate_pages_threshold: type: number format: double minimum: 0.0 nullable: true title: Sets the threshold for rotation of pages max_image_pixels: type: number format: double minimum: 0.0 nullable: true title: Sets the maximum image size for decompression color_conversion_strategy: nullable: true title: Sets the Ghostscript color conversion strategy oneOf: - $ref: '#/components/schemas/ColorConversionStrategyEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' app_title: type: string nullable: true title: Application title maxLength: 48 app_logo: type: string format: uri nullable: true title: Application logo pattern: (?:jpg|png|gif|svg)$ barcodes_enabled: type: boolean nullable: true title: Enables barcode scanning barcode_enable_tiff_support: type: boolean nullable: true title: Enables barcode TIFF support barcode_string: type: string nullable: true title: Sets the barcode string maxLength: 32 barcode_retain_split_pages: type: boolean nullable: true title: Retains split pages barcode_enable_asn: type: boolean nullable: true title: Enables ASN barcode barcode_asn_prefix: type: string nullable: true title: Sets the ASN barcode prefix maxLength: 32 barcode_upscale: type: number format: double minimum: 1.0 nullable: true title: Sets the barcode upscale factor barcode_dpi: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 nullable: true title: Sets the barcode DPI barcode_max_pages: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 nullable: true title: Sets the maximum pages for barcode barcode_enable_tag: type: boolean nullable: true title: Enables tag barcode required: - barcode_tag_mapping - id - user_args ApplicationConfigurationRequest: type: object properties: user_args: nullable: true barcode_tag_mapping: nullable: true output_type: nullable: true title: Sets the output PDF type oneOf: - $ref: '#/components/schemas/OutputTypeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' pages: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 nullable: true title: Do OCR from page 1 to this value language: type: string nullable: true title: Do OCR using these languages maxLength: 32 mode: nullable: true title: Sets the OCR mode oneOf: - $ref: '#/components/schemas/ModeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' skip_archive_file: nullable: true title: Controls the generation of an archive file oneOf: - $ref: '#/components/schemas/SkipArchiveFileEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' image_dpi: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 nullable: true title: Sets image DPI fallback value unpaper_clean: nullable: true title: Controls the unpaper cleaning oneOf: - $ref: '#/components/schemas/UnpaperCleanEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' deskew: type: boolean nullable: true title: Enables deskew rotate_pages: type: boolean nullable: true title: Enables page rotation rotate_pages_threshold: type: number format: double minimum: 0.0 nullable: true title: Sets the threshold for rotation of pages max_image_pixels: type: number format: double minimum: 0.0 nullable: true title: Sets the maximum image size for decompression color_conversion_strategy: nullable: true title: Sets the Ghostscript color conversion strategy oneOf: - $ref: '#/components/schemas/ColorConversionStrategyEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' app_title: type: string nullable: true title: Application title maxLength: 48 app_logo: type: string format: binary nullable: true title: Application logo pattern: (?:jpg|png|gif|svg)$ barcodes_enabled: type: boolean nullable: true title: Enables barcode scanning barcode_enable_tiff_support: type: boolean nullable: true title: Enables barcode TIFF support barcode_string: type: string nullable: true title: Sets the barcode string maxLength: 32 barcode_retain_split_pages: type: boolean nullable: true title: Retains split pages barcode_enable_asn: type: boolean nullable: true title: Enables ASN barcode barcode_asn_prefix: type: string nullable: true title: Sets the ASN barcode prefix maxLength: 32 barcode_upscale: type: number format: double minimum: 1.0 nullable: true title: Sets the barcode upscale factor barcode_dpi: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 nullable: true title: Sets the barcode DPI barcode_max_pages: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 nullable: true title: Sets the maximum pages for barcode barcode_enable_tag: type: boolean nullable: true title: Enables tag barcode required: - barcode_tag_mapping - user_args AssignCorrespondentFromEnum: enum: - 1 - 2 - 3 - 4 type: integer description: |- * `1` - Do not assign a correspondent * `2` - Use mail address * `3` - Use name (or mail address if not available) * `4` - Use correspondent selected below AssignTitleFromEnum: enum: - 1 - 2 - 3 type: integer description: |- * `1` - Use subject as title * `2` - Use attachment filename as title * `3` - Do not assign title from rule AttachmentTypeEnum: enum: - 1 - 2 type: integer description: |- * `1` - Only process attachments. * `2` - Process all files, including 'inline' attachments. BasicUser: type: object properties: id: type: integer readOnly: true username: type: string description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. pattern: ^[\w.@+-]+$ maxLength: 150 first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 required: - id - username BasicUserRequest: type: object properties: username: type: string minLength: 1 description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. pattern: ^[\w.@+-]+$ maxLength: 150 first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 required: - username BlankEnum: enum: - '' BulkDownload: type: object properties: content: allOf: - $ref: '#/components/schemas/ContentEnum' default: archive compression: allOf: - $ref: '#/components/schemas/CompressionEnum' default: none follow_formatting: type: boolean default: false BulkDownloadRequest: type: object properties: documents: type: array items: type: integer writeOnly: true content: allOf: - $ref: '#/components/schemas/ContentEnum' default: archive compression: allOf: - $ref: '#/components/schemas/CompressionEnum' default: none follow_formatting: type: boolean default: false required: - documents BulkEditDocumentsResult: type: object properties: result: type: string required: - result BulkEditObjectsRequest: type: object properties: objects: type: array items: type: integer writeOnly: true object_type: allOf: - $ref: '#/components/schemas/ObjectTypeEnum' writeOnly: true operation: allOf: - $ref: '#/components/schemas/OperationEnum' writeOnly: true owner: type: integer nullable: true permissions: type: object additionalProperties: {} writeOnly: true title: Set permissions merge: type: boolean writeOnly: true default: false required: - object_type - objects - operation BulkEditRequest: type: object properties: documents: type: array items: type: integer writeOnly: true method: allOf: - $ref: '#/components/schemas/MethodEnum' writeOnly: true parameters: type: object additionalProperties: {} writeOnly: true default: {} required: - documents - method BulkEditResult: type: object properties: result: type: string required: - result Classifier: type: object properties: status: type: string error: type: string last_trained: type: string format: date-time required: - error - last_trained - status ColorConversionStrategyEnum: enum: - LeaveColorUnchanged - RGB - UseDeviceIndependentColor - Gray - CMYK type: string description: |- * `LeaveColorUnchanged` - LeaveColorUnchanged * `RGB` - RGB * `UseDeviceIndependentColor` - UseDeviceIndependentColor * `Gray` - Gray * `CMYK` - CMYK CompressionEnum: enum: - none - deflated - bzip2 - lzma type: string description: |- * `none` - none * `deflated` - deflated * `bzip2` - bzip2 * `lzma` - lzma ConsumptionScopeEnum: enum: - 1 - 2 - 3 type: integer description: |- * `1` - Only process attachments. * `2` - Process full Mail (with embedded attachments in file) as .eml * `3` - Process full Mail (with embedded attachments in file) as .eml + process attachments as separate documents ContentEnum: enum: - archive - originals - both type: string description: |- * `archive` - archive * `originals` - originals * `both` - both Correspondent: type: object properties: id: type: integer readOnly: true slug: type: string readOnly: true name: type: string maxLength: 128 match: type: string maxLength: 256 matching_algorithm: allOf: - $ref: '#/components/schemas/MatchingAlgorithm' minimum: 0 maximum: 9223372036854775807 is_insensitive: type: boolean document_count: type: integer readOnly: true last_correspondence: type: string format: date readOnly: true owner: type: integer nullable: true permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer readOnly: true user_can_change: type: boolean readOnly: true required: - document_count - id - last_correspondence - name - permissions - slug - user_can_change CorrespondentCounts: type: object properties: id: type: integer document_count: type: integer required: - document_count - id CorrespondentRequest: type: object properties: name: type: string minLength: 1 maxLength: 128 match: type: string maxLength: 256 matching_algorithm: allOf: - $ref: '#/components/schemas/MatchingAlgorithm' minimum: 0 maximum: 9223372036854775807 is_insensitive: type: boolean owner: type: integer nullable: true set_permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer writeOnly: true required: - name CustomField: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 data_type: $ref: '#/components/schemas/DataTypeEnum' extra_data: nullable: true description: Extra data for the custom field, such as select options document_count: type: integer readOnly: true required: - data_type - document_count - id - name CustomFieldCounts: type: object properties: id: type: integer document_count: type: integer required: - document_count - id CustomFieldInstance: type: object properties: value: oneOf: - type: string - type: integer - type: number format: double - type: object additionalProperties: {} nullable: true description: |- Given the *incoming* primitive data, return the value for this field that should be validated and transformed to a native value. field: type: integer required: - field - value CustomFieldInstanceRequest: type: object properties: value: oneOf: - type: string - type: integer - type: number format: double - type: object additionalProperties: {} nullable: true description: |- Given the *incoming* primitive data, return the value for this field that should be validated and transformed to a native value. field: type: integer required: - field - value CustomFieldRequest: type: object properties: name: type: string minLength: 1 maxLength: 128 data_type: $ref: '#/components/schemas/DataTypeEnum' extra_data: nullable: true description: Extra data for the custom field, such as select options required: - data_type - name DataTypeEnum: enum: - string - url - date - boolean - integer - float - monetary - documentlink - select type: string description: |- * `string` - string * `url` - url * `date` - date * `boolean` - boolean * `integer` - integer * `float` - float * `monetary` - monetary * `documentlink` - documentlink * `select` - select Database: type: object properties: type: type: string url: type: string status: type: string error: type: string migration_status: $ref: '#/components/schemas/MigrationStatus' required: - error - migration_status - status - type - url DisplayModeEnum: enum: - table - smallCards - largeCards type: string description: |- * `table` - Table * `smallCards` - Small Cards * `largeCards` - Large Cards Document: type: object description: Adds update nested feature properties: id: type: integer readOnly: true correspondent: type: integer nullable: true document_type: type: integer nullable: true storage_path: type: integer nullable: true title: type: string maxLength: 128 content: type: string description: The raw, text-only data of the document. This field is primarily used for searching. tags: type: array items: type: integer created: type: string format: date created_date: type: string format: date deprecated: true modified: type: string format: date-time readOnly: true added: type: string format: date-time readOnly: true deleted_at: type: string format: date-time nullable: true archive_serial_number: type: integer maximum: 4294967295 minimum: 0 format: int64 nullable: true description: The position of this document in your physical document archive. original_file_name: type: string nullable: true readOnly: true archived_file_name: type: string nullable: true readOnly: true owner: type: integer nullable: true permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer readOnly: true user_can_change: type: boolean readOnly: true is_shared_by_requester: type: boolean readOnly: true notes: type: array items: $ref: '#/components/schemas/Notes' readOnly: true custom_fields: type: array items: $ref: '#/components/schemas/CustomFieldInstance' page_count: type: integer nullable: true readOnly: true mime_type: type: string readOnly: true required: - added - archived_file_name - correspondent - document_type - id - is_shared_by_requester - mime_type - modified - notes - original_file_name - page_count - permissions - storage_path - tags - user_can_change DocumentListRequest: type: object properties: documents: type: array items: type: integer writeOnly: true required: - documents DocumentRequest: type: object description: Adds update nested feature properties: correspondent: type: integer nullable: true document_type: type: integer nullable: true storage_path: type: integer nullable: true title: type: string maxLength: 128 content: type: string description: The raw, text-only data of the document. This field is primarily used for searching. tags: type: array items: type: integer created: type: string format: date created_date: type: string format: date deprecated: true deleted_at: type: string format: date-time nullable: true archive_serial_number: type: integer maximum: 4294967295 minimum: 0 format: int64 nullable: true description: The position of this document in your physical document archive. owner: type: integer nullable: true set_permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer writeOnly: true custom_fields: type: array items: $ref: '#/components/schemas/CustomFieldInstanceRequest' remove_inbox_tags: type: boolean writeOnly: true nullable: true default: false required: - correspondent - document_type - storage_path - tags DocumentType: type: object properties: id: type: integer readOnly: true slug: type: string readOnly: true name: type: string maxLength: 128 match: type: string maxLength: 256 matching_algorithm: allOf: - $ref: '#/components/schemas/MatchingAlgorithm' minimum: 0 maximum: 9223372036854775807 is_insensitive: type: boolean document_count: type: integer readOnly: true owner: type: integer nullable: true permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer readOnly: true user_can_change: type: boolean readOnly: true required: - document_count - id - name - permissions - slug - user_can_change DocumentTypeCounts: type: object properties: id: type: integer document_count: type: integer required: - document_count - id DocumentTypeRequest: type: object properties: name: type: string minLength: 1 maxLength: 128 match: type: string maxLength: 256 matching_algorithm: allOf: - $ref: '#/components/schemas/MatchingAlgorithm' minimum: 0 maximum: 9223372036854775807 is_insensitive: type: boolean owner: type: integer nullable: true set_permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer writeOnly: true required: - name EmailRequestRequest: type: object properties: addresses: type: string minLength: 1 subject: type: string minLength: 1 message: type: string minLength: 1 use_archive_version: type: boolean default: true required: - addresses - message - subject EmailResponse: type: object properties: message: type: string required: - message FileVersionEnum: enum: - archive - original type: string description: |- * `archive` - Archive * `original` - Original Group: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 150 permissions: type: array items: type: string required: - id - name - permissions GroupRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 permissions: type: array items: type: string minLength: 1 required: - name - permissions ImapSecurityEnum: enum: - 1 - 2 - 3 type: integer description: |- * `1` - No encryption * `2` - Use SSL * `3` - Use STARTTLS Index: type: object properties: status: type: string error: type: string last_modified: type: string format: date-time required: - error - last_modified - status LogEntry: type: object properties: id: type: integer timestamp: type: string format: date-time action: type: string changes: type: object additionalProperties: {} actor: $ref: '#/components/schemas/Actor' required: - action - actor - changes - id - timestamp MailAccount: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 256 imap_server: type: string maxLength: 256 imap_port: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 nullable: true description: This is usually 143 for unencrypted and STARTTLS connections, and 993 for SSL connections. imap_security: allOf: - $ref: '#/components/schemas/ImapSecurityEnum' minimum: 0 maximum: 9223372036854775807 username: type: string maxLength: 256 password: type: string character_set: type: string description: The character set to use when communicating with the mail server, such as 'UTF-8' or 'US-ASCII'. maxLength: 256 is_token: type: boolean title: Is token authentication owner: type: integer nullable: true user_can_change: type: boolean readOnly: true account_type: allOf: - $ref: '#/components/schemas/AccountTypeEnum' minimum: 0 maximum: 9223372036854775807 expiration: type: string format: date-time nullable: true description: 'The expiration date of the refresh token. ' required: - id - imap_server - name - password - user_can_change - username MailAccountProcessResponse: type: object properties: result: type: string default: OK MailAccountRequest: type: object properties: name: type: string minLength: 1 maxLength: 256 imap_server: type: string minLength: 1 maxLength: 256 imap_port: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 nullable: true description: This is usually 143 for unencrypted and STARTTLS connections, and 993 for SSL connections. imap_security: allOf: - $ref: '#/components/schemas/ImapSecurityEnum' minimum: 0 maximum: 9223372036854775807 username: type: string minLength: 1 maxLength: 256 password: type: string minLength: 1 character_set: type: string minLength: 1 description: The character set to use when communicating with the mail server, such as 'UTF-8' or 'US-ASCII'. maxLength: 256 is_token: type: boolean title: Is token authentication owner: type: integer nullable: true set_permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer writeOnly: true account_type: allOf: - $ref: '#/components/schemas/AccountTypeEnum' minimum: 0 maximum: 9223372036854775807 expiration: type: string format: date-time nullable: true description: 'The expiration date of the refresh token. ' required: - imap_server - name - password - username MailAccountTestResponse: type: object properties: success: type: boolean required: - success MailRule: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 256 account: type: integer enabled: type: boolean folder: type: string description: Subfolders must be separated by a delimiter, often a dot ('.') or slash ('/'), but it varies by mail server. maxLength: 256 filter_from: type: string nullable: true maxLength: 256 filter_to: type: string nullable: true maxLength: 256 filter_subject: type: string nullable: true maxLength: 256 filter_body: type: string nullable: true maxLength: 256 filter_attachment_filename_include: type: string nullable: true title: Filter attachment filename inclusive description: Only consume documents which entirely match this filename if specified. Wildcards such as *.pdf or *invoice* are allowed. Case insensitive. maxLength: 256 filter_attachment_filename_exclude: type: string nullable: true title: Filter attachment filename exclusive description: Do not consume documents which entirely match this filename if specified. Wildcards such as *.pdf or *invoice* are allowed. Case insensitive. maxLength: 256 maximum_age: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 description: Specified in days. action: allOf: - $ref: '#/components/schemas/MailRuleActionEnum' minimum: 0 maximum: 9223372036854775807 action_parameter: type: string nullable: true default: '' assign_title_from: allOf: - $ref: '#/components/schemas/AssignTitleFromEnum' minimum: 0 maximum: 9223372036854775807 assign_tags: type: array items: type: integer nullable: true assign_correspondent_from: allOf: - $ref: '#/components/schemas/AssignCorrespondentFromEnum' minimum: 0 maximum: 9223372036854775807 assign_correspondent: type: integer nullable: true assign_document_type: type: integer nullable: true assign_owner_from_rule: type: boolean title: Assign the rule owner to documents order: type: integer attachment_type: allOf: - $ref: '#/components/schemas/AttachmentTypeEnum' description: |- Inline attachments include embedded images, so it's best to combine this option with a filename filter. * `1` - Only process attachments. * `2` - Process all files, including 'inline' attachments. minimum: 0 maximum: 9223372036854775807 consumption_scope: allOf: - $ref: '#/components/schemas/ConsumptionScopeEnum' minimum: 0 maximum: 9223372036854775807 pdf_layout: allOf: - $ref: '#/components/schemas/PdfLayoutEnum' minimum: 0 maximum: 9223372036854775807 owner: type: integer nullable: true user_can_change: type: boolean readOnly: true required: - account - id - name - user_can_change MailRuleActionEnum: enum: - 1 - 2 - 3 - 4 - 5 type: integer description: |- * `1` - Delete * `2` - Move to specified folder * `3` - Mark as read, don't process read mails * `4` - Flag the mail, don't process flagged mails * `5` - Tag the mail with specified tag, don't process tagged mails MailRuleRequest: type: object properties: name: type: string minLength: 1 maxLength: 256 account: type: integer enabled: type: boolean folder: type: string minLength: 1 description: Subfolders must be separated by a delimiter, often a dot ('.') or slash ('/'), but it varies by mail server. maxLength: 256 filter_from: type: string nullable: true maxLength: 256 filter_to: type: string nullable: true maxLength: 256 filter_subject: type: string nullable: true maxLength: 256 filter_body: type: string nullable: true maxLength: 256 filter_attachment_filename_include: type: string nullable: true title: Filter attachment filename inclusive description: Only consume documents which entirely match this filename if specified. Wildcards such as *.pdf or *invoice* are allowed. Case insensitive. maxLength: 256 filter_attachment_filename_exclude: type: string nullable: true title: Filter attachment filename exclusive description: Do not consume documents which entirely match this filename if specified. Wildcards such as *.pdf or *invoice* are allowed. Case insensitive. maxLength: 256 maximum_age: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 description: Specified in days. action: allOf: - $ref: '#/components/schemas/MailRuleActionEnum' minimum: 0 maximum: 9223372036854775807 action_parameter: type: string nullable: true minLength: 1 default: '' assign_title_from: allOf: - $ref: '#/components/schemas/AssignTitleFromEnum' minimum: 0 maximum: 9223372036854775807 assign_tags: type: array items: type: integer nullable: true assign_correspondent_from: allOf: - $ref: '#/components/schemas/AssignCorrespondentFromEnum' minimum: 0 maximum: 9223372036854775807 assign_correspondent: type: integer nullable: true assign_document_type: type: integer nullable: true assign_owner_from_rule: type: boolean title: Assign the rule owner to documents order: type: integer attachment_type: allOf: - $ref: '#/components/schemas/AttachmentTypeEnum' description: |- Inline attachments include embedded images, so it's best to combine this option with a filename filter. * `1` - Only process attachments. * `2` - Process all files, including 'inline' attachments. minimum: 0 maximum: 9223372036854775807 consumption_scope: allOf: - $ref: '#/components/schemas/ConsumptionScopeEnum' minimum: 0 maximum: 9223372036854775807 pdf_layout: allOf: - $ref: '#/components/schemas/PdfLayoutEnum' minimum: 0 maximum: 9223372036854775807 owner: type: integer nullable: true set_permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer writeOnly: true required: - account - name MatchingAlgorithm: enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 type: integer description: |- * `0` - None * `1` - Any word * `2` - All words * `3` - Exact match * `4` - Regular expression * `5` - Fuzzy word * `6` - Automatic Metadata: type: object properties: original_checksum: type: string original_size: type: integer original_mime_type: type: string media_filename: type: string has_archive_version: type: boolean original_metadata: type: object additionalProperties: {} archive_checksum: type: string archive_media_filename: type: string original_filename: type: string archive_size: type: integer archive_metadata: type: object additionalProperties: {} lang: type: string required: - archive_checksum - archive_media_filename - archive_metadata - archive_size - has_archive_version - lang - media_filename - original_checksum - original_filename - original_metadata - original_mime_type - original_size MethodEnum: enum: - set_correspondent - set_document_type - set_storage_path - add_tag - remove_tag - modify_tags - modify_custom_fields - delete - reprocess - set_permissions - rotate - merge - split - delete_pages type: string description: |- * `set_correspondent` - set_correspondent * `set_document_type` - set_document_type * `set_storage_path` - set_storage_path * `add_tag` - add_tag * `remove_tag` - remove_tag * `modify_tags` - modify_tags * `modify_custom_fields` - modify_custom_fields * `delete` - delete * `reprocess` - reprocess * `set_permissions` - set_permissions * `rotate` - rotate * `merge` - merge * `split` - split * `delete_pages` - delete_pages MigrationStatus: type: object properties: latest_migration: type: string unapplied_migrations: type: array items: type: string required: - latest_migration - unapplied_migrations ModeEnum: enum: - skip - redo - force - skip_noarchive type: string description: |- * `skip` - skip * `redo` - redo * `force` - force * `skip_noarchive` - skip_noarchive NoteCreateRequestRequest: type: object properties: note: type: string minLength: 1 required: - note Notes: type: object properties: id: type: integer readOnly: true note: type: string title: Content description: Note for the document created: type: string format: date-time user: allOf: - $ref: '#/components/schemas/BasicUser' readOnly: true required: - id - user NotesRequest: type: object properties: note: type: string title: Content description: Note for the document created: type: string format: date-time NullEnum: enum: - null ObjectTypeEnum: enum: - tags - correspondents - document_types - storage_paths type: string description: |- * `tags` - tags * `correspondents` - correspondents * `document_types` - document_types * `storage_paths` - storage_paths OperationEnum: enum: - set_permissions - delete type: string description: |- * `set_permissions` - set_permissions * `delete` - delete OutputTypeEnum: enum: - pdf - pdfa - pdfa-1 - pdfa-2 - pdfa-3 type: string description: |- * `pdf` - pdf * `pdfa` - pdfa * `pdfa-1` - pdfa-1 * `pdfa-2` - pdfa-2 * `pdfa-3` - pdfa-3 PaginatedCorrespondentList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/Correspondent' all: type: array example: '[1, 2, 3]' PaginatedCustomFieldList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/CustomField' all: type: array example: '[1, 2, 3]' PaginatedDocumentList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/Document' all: type: array example: '[1, 2, 3]' PaginatedDocumentTypeList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/DocumentType' all: type: array example: '[1, 2, 3]' PaginatedGroupList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/Group' all: type: array example: '[1, 2, 3]' PaginatedLogEntryList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/LogEntry' all: type: array example: '[1, 2, 3]' PaginatedMailAccountList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/MailAccount' all: type: array example: '[1, 2, 3]' PaginatedMailRuleList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/MailRule' all: type: array example: '[1, 2, 3]' PaginatedNotesList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/Notes' all: type: array example: '[1, 2, 3]' PaginatedSavedViewList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/SavedView' all: type: array example: '[1, 2, 3]' PaginatedShareLinkList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/ShareLink' all: type: array example: '[1, 2, 3]' PaginatedStoragePathList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/StoragePath' all: type: array example: '[1, 2, 3]' PaginatedTagList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/Tag' all: type: array example: '[1, 2, 3]' PaginatedUserList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/User' all: type: array example: '[1, 2, 3]' PaginatedWorkflowActionList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/WorkflowAction' all: type: array example: '[1, 2, 3]' PaginatedWorkflowList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/Workflow' all: type: array example: '[1, 2, 3]' PaginatedWorkflowTriggerList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=4 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/WorkflowTrigger' all: type: array example: '[1, 2, 3]' PaperlessAuthToken: type: object properties: token: type: string readOnly: true required: - token PaperlessAuthTokenRequest: type: object properties: username: type: string writeOnly: true minLength: 1 password: type: string writeOnly: true minLength: 1 code: type: string writeOnly: true minLength: 1 title: MFA Code required: - password - username PatchedApplicationConfigurationRequest: type: object properties: user_args: nullable: true barcode_tag_mapping: nullable: true output_type: nullable: true title: Sets the output PDF type oneOf: - $ref: '#/components/schemas/OutputTypeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' pages: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 nullable: true title: Do OCR from page 1 to this value language: type: string nullable: true title: Do OCR using these languages maxLength: 32 mode: nullable: true title: Sets the OCR mode oneOf: - $ref: '#/components/schemas/ModeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' skip_archive_file: nullable: true title: Controls the generation of an archive file oneOf: - $ref: '#/components/schemas/SkipArchiveFileEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' image_dpi: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 nullable: true title: Sets image DPI fallback value unpaper_clean: nullable: true title: Controls the unpaper cleaning oneOf: - $ref: '#/components/schemas/UnpaperCleanEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' deskew: type: boolean nullable: true title: Enables deskew rotate_pages: type: boolean nullable: true title: Enables page rotation rotate_pages_threshold: type: number format: double minimum: 0.0 nullable: true title: Sets the threshold for rotation of pages max_image_pixels: type: number format: double minimum: 0.0 nullable: true title: Sets the maximum image size for decompression color_conversion_strategy: nullable: true title: Sets the Ghostscript color conversion strategy oneOf: - $ref: '#/components/schemas/ColorConversionStrategyEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' app_title: type: string nullable: true title: Application title maxLength: 48 app_logo: type: string format: binary nullable: true title: Application logo pattern: (?:jpg|png|gif|svg)$ barcodes_enabled: type: boolean nullable: true title: Enables barcode scanning barcode_enable_tiff_support: type: boolean nullable: true title: Enables barcode TIFF support barcode_string: type: string nullable: true title: Sets the barcode string maxLength: 32 barcode_retain_split_pages: type: boolean nullable: true title: Retains split pages barcode_enable_asn: type: boolean nullable: true title: Enables ASN barcode barcode_asn_prefix: type: string nullable: true title: Sets the ASN barcode prefix maxLength: 32 barcode_upscale: type: number format: double minimum: 1.0 nullable: true title: Sets the barcode upscale factor barcode_dpi: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 nullable: true title: Sets the barcode DPI barcode_max_pages: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 nullable: true title: Sets the maximum pages for barcode barcode_enable_tag: type: boolean nullable: true title: Enables tag barcode PatchedCorrespondentRequest: type: object properties: name: type: string minLength: 1 maxLength: 128 match: type: string maxLength: 256 matching_algorithm: allOf: - $ref: '#/components/schemas/MatchingAlgorithm' minimum: 0 maximum: 9223372036854775807 is_insensitive: type: boolean owner: type: integer nullable: true set_permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer writeOnly: true PatchedCustomFieldRequest: type: object properties: name: type: string minLength: 1 maxLength: 128 data_type: $ref: '#/components/schemas/DataTypeEnum' extra_data: nullable: true description: Extra data for the custom field, such as select options PatchedDocumentRequest: type: object description: Adds update nested feature properties: correspondent: type: integer nullable: true document_type: type: integer nullable: true storage_path: type: integer nullable: true title: type: string maxLength: 128 content: type: string description: The raw, text-only data of the document. This field is primarily used for searching. tags: type: array items: type: integer created: type: string format: date created_date: type: string format: date deprecated: true deleted_at: type: string format: date-time nullable: true archive_serial_number: type: integer maximum: 4294967295 minimum: 0 format: int64 nullable: true description: The position of this document in your physical document archive. owner: type: integer nullable: true set_permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer writeOnly: true custom_fields: type: array items: $ref: '#/components/schemas/CustomFieldInstanceRequest' remove_inbox_tags: type: boolean writeOnly: true nullable: true default: false PatchedDocumentTypeRequest: type: object properties: name: type: string minLength: 1 maxLength: 128 match: type: string maxLength: 256 matching_algorithm: allOf: - $ref: '#/components/schemas/MatchingAlgorithm' minimum: 0 maximum: 9223372036854775807 is_insensitive: type: boolean owner: type: integer nullable: true set_permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer writeOnly: true PatchedGroupRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 permissions: type: array items: type: string minLength: 1 PatchedMailAccountRequest: type: object properties: name: type: string minLength: 1 maxLength: 256 imap_server: type: string minLength: 1 maxLength: 256 imap_port: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 nullable: true description: This is usually 143 for unencrypted and STARTTLS connections, and 993 for SSL connections. imap_security: allOf: - $ref: '#/components/schemas/ImapSecurityEnum' minimum: 0 maximum: 9223372036854775807 username: type: string minLength: 1 maxLength: 256 password: type: string minLength: 1 character_set: type: string minLength: 1 description: The character set to use when communicating with the mail server, such as 'UTF-8' or 'US-ASCII'. maxLength: 256 is_token: type: boolean title: Is token authentication owner: type: integer nullable: true set_permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer writeOnly: true account_type: allOf: - $ref: '#/components/schemas/AccountTypeEnum' minimum: 0 maximum: 9223372036854775807 expiration: type: string format: date-time nullable: true description: 'The expiration date of the refresh token. ' PatchedMailRuleRequest: type: object properties: name: type: string minLength: 1 maxLength: 256 account: type: integer enabled: type: boolean folder: type: string minLength: 1 description: Subfolders must be separated by a delimiter, often a dot ('.') or slash ('/'), but it varies by mail server. maxLength: 256 filter_from: type: string nullable: true maxLength: 256 filter_to: type: string nullable: true maxLength: 256 filter_subject: type: string nullable: true maxLength: 256 filter_body: type: string nullable: true maxLength: 256 filter_attachment_filename_include: type: string nullable: true title: Filter attachment filename inclusive description: Only consume documents which entirely match this filename if specified. Wildcards such as *.pdf or *invoice* are allowed. Case insensitive. maxLength: 256 filter_attachment_filename_exclude: type: string nullable: true title: Filter attachment filename exclusive description: Do not consume documents which entirely match this filename if specified. Wildcards such as *.pdf or *invoice* are allowed. Case insensitive. maxLength: 256 maximum_age: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 description: Specified in days. action: allOf: - $ref: '#/components/schemas/MailRuleActionEnum' minimum: 0 maximum: 9223372036854775807 action_parameter: type: string nullable: true minLength: 1 default: '' assign_title_from: allOf: - $ref: '#/components/schemas/AssignTitleFromEnum' minimum: 0 maximum: 9223372036854775807 assign_tags: type: array items: type: integer nullable: true assign_correspondent_from: allOf: - $ref: '#/components/schemas/AssignCorrespondentFromEnum' minimum: 0 maximum: 9223372036854775807 assign_correspondent: type: integer nullable: true assign_document_type: type: integer nullable: true assign_owner_from_rule: type: boolean title: Assign the rule owner to documents order: type: integer attachment_type: allOf: - $ref: '#/components/schemas/AttachmentTypeEnum' description: |- Inline attachments include embedded images, so it's best to combine this option with a filename filter. * `1` - Only process attachments. * `2` - Process all files, including 'inline' attachments. minimum: 0 maximum: 9223372036854775807 consumption_scope: allOf: - $ref: '#/components/schemas/ConsumptionScopeEnum' minimum: 0 maximum: 9223372036854775807 pdf_layout: allOf: - $ref: '#/components/schemas/PdfLayoutEnum' minimum: 0 maximum: 9223372036854775807 owner: type: integer nullable: true set_permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer writeOnly: true PatchedProfileRequest: type: object properties: email: type: string format: email password: type: string minLength: 1 first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 PatchedSavedViewRequest: type: object properties: name: type: string minLength: 1 maxLength: 128 show_on_dashboard: type: boolean show_in_sidebar: type: boolean sort_field: type: string nullable: true maxLength: 128 sort_reverse: type: boolean filter_rules: type: array items: $ref: '#/components/schemas/SavedViewFilterRuleRequest' page_size: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 nullable: true title: View page size display_mode: nullable: true title: View display mode oneOf: - $ref: '#/components/schemas/DisplayModeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' display_fields: nullable: true title: Document display fields owner: type: integer nullable: true PatchedShareLinkRequest: type: object properties: expiration: type: string format: date-time nullable: true document: type: integer file_version: $ref: '#/components/schemas/FileVersionEnum' PatchedStoragePathRequest: type: object properties: name: type: string minLength: 1 maxLength: 128 path: type: string minLength: 1 match: type: string maxLength: 256 matching_algorithm: allOf: - $ref: '#/components/schemas/MatchingAlgorithm' minimum: 0 maximum: 9223372036854775807 is_insensitive: type: boolean owner: type: integer nullable: true set_permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer writeOnly: true PatchedTagRequest: type: object properties: name: type: string minLength: 1 maxLength: 128 color: type: string minLength: 1 maxLength: 7 match: type: string maxLength: 256 matching_algorithm: allOf: - $ref: '#/components/schemas/MatchingAlgorithm' minimum: 0 maximum: 9223372036854775807 is_insensitive: type: boolean is_inbox_tag: type: boolean description: 'Marks this tag as an inbox tag: All newly consumed documents will be tagged with inbox tags.' owner: type: integer nullable: true set_permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer writeOnly: true PatchedUserRequest: type: object properties: username: type: string minLength: 1 description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. pattern: ^[\w.@+-]+$ maxLength: 150 email: type: string format: email title: Email address maxLength: 254 password: type: string minLength: 1 first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 date_joined: type: string format: date-time is_staff: type: boolean title: Staff status description: Designates whether the user can log into this admin site. is_active: type: boolean title: Active description: Designates whether this user should be treated as active. Unselect this instead of deleting accounts. is_superuser: type: boolean title: Superuser status description: Designates that this user has all permissions without explicitly assigning them. groups: type: array items: type: integer description: The groups this user belongs to. A user will get all permissions granted to each of their groups. user_permissions: type: array items: type: string minLength: 1 PatchedWorkflowActionRequest: type: object properties: id: type: integer nullable: true type: allOf: - $ref: '#/components/schemas/WorkflowActionTypeEnum' title: Workflow Action Type minimum: 0 maximum: 9223372036854775807 assign_title: type: string nullable: true description: Assign a document title, can include some placeholders, see documentation. maxLength: 256 assign_tags: type: array items: type: integer nullable: true assign_correspondent: type: integer nullable: true assign_document_type: type: integer nullable: true assign_storage_path: type: integer nullable: true assign_owner: type: integer nullable: true title: Assign this owner assign_view_users: type: array items: type: integer title: Grant view permissions to these users title: Grant view permissions to these users assign_view_groups: type: array items: type: integer title: Grant view permissions to these groups title: Grant view permissions to these groups assign_change_users: type: array items: type: integer title: Grant change permissions to these users title: Grant change permissions to these users assign_change_groups: type: array items: type: integer title: Grant change permissions to these groups title: Grant change permissions to these groups assign_custom_fields: type: array items: type: integer title: Assign these custom fields title: Assign these custom fields assign_custom_fields_values: nullable: true title: Custom field values description: Optional values to assign to the custom fields. remove_all_tags: type: boolean remove_tags: type: array items: type: integer title: Remove these tag(s) title: Remove these tag(s) remove_all_correspondents: type: boolean remove_correspondents: type: array items: type: integer title: Remove these correspondent(s) title: Remove these correspondent(s) remove_all_document_types: type: boolean remove_document_types: type: array items: type: integer title: Remove these document type(s) title: Remove these document type(s) remove_all_storage_paths: type: boolean remove_storage_paths: type: array items: type: integer title: Remove these storage path(s) title: Remove these storage path(s) remove_custom_fields: type: array items: type: integer title: Remove these custom fields title: Remove these custom fields remove_all_custom_fields: type: boolean remove_all_owners: type: boolean remove_owners: type: array items: type: integer title: Remove these owner(s) title: Remove these owner(s) remove_all_permissions: type: boolean remove_view_users: type: array items: type: integer title: Remove view permissions for these users title: Remove view permissions for these users remove_view_groups: type: array items: type: integer title: Remove view permissions for these groups title: Remove view permissions for these groups remove_change_users: type: array items: type: integer title: Remove change permissions for these users title: Remove change permissions for these users remove_change_groups: type: array items: type: integer title: Remove change permissions for these groups title: Remove change permissions for these groups email: allOf: - $ref: '#/components/schemas/WorkflowActionEmailRequest' nullable: true webhook: allOf: - $ref: '#/components/schemas/WorkflowActionWebhookRequest' nullable: true PatchedWorkflowRequest: type: object properties: name: type: string minLength: 1 maxLength: 256 order: type: integer enabled: type: boolean triggers: type: array items: $ref: '#/components/schemas/WorkflowTriggerRequest' actions: type: array items: $ref: '#/components/schemas/WorkflowActionRequest' PatchedWorkflowTriggerRequest: type: object properties: id: type: integer nullable: true sources: type: array items: $ref: '#/components/schemas/SourcesEnum' default: - 1 - 2 - 3 type: allOf: - $ref: '#/components/schemas/WorkflowTriggerTypeEnum' title: Trigger Type filter_path: type: string nullable: true description: Only consume documents with a path that matches this if specified. Wildcards specified as * are allowed. Case insensitive. maxLength: 256 filter_filename: type: string nullable: true description: Only consume documents which entirely match this filename if specified. Wildcards such as *.pdf or *invoice* are allowed. Case insensitive. maxLength: 256 filter_mailrule: type: integer nullable: true title: Filter documents from this mail rule matching_algorithm: allOf: - $ref: '#/components/schemas/WorkflowTriggerMatchingAlgorithmEnum' minimum: 0 maximum: 9223372036854775807 match: type: string maxLength: 256 is_insensitive: type: boolean filter_has_tags: type: array items: type: integer title: Has these tag(s) title: Has these tag(s) filter_has_correspondent: type: integer nullable: true title: Has this correspondent filter_has_document_type: type: integer nullable: true title: Has this document type schedule_offset_days: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 description: The number of days to offset the schedule trigger by. schedule_is_recurring: type: boolean description: If the schedule should be recurring. schedule_recurring_interval_days: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 title: Schedule recurring delay in days description: The number of days between recurring schedule triggers. schedule_date_field: allOf: - $ref: '#/components/schemas/ScheduleDateFieldEnum' description: |- The field to check for a schedule trigger. * `added` - Added * `created` - Created * `modified` - Modified * `custom_field` - Custom Field schedule_date_custom_field: type: integer nullable: true PdfLayoutEnum: enum: - 0 - 1 - 2 - 3 - 4 type: integer description: |- * `0` - System default * `1` - Text, then HTML * `2` - HTML, then text * `3` - HTML only * `4` - Text only PostDocumentRequest: type: object properties: created: type: string format: date-time writeOnly: true nullable: true document: type: string format: binary writeOnly: true title: type: string writeOnly: true minLength: 1 correspondent: type: integer writeOnly: true nullable: true document_type: type: integer writeOnly: true nullable: true storage_path: type: integer writeOnly: true nullable: true tags: type: array items: type: integer writeOnly: true title: Tags writeOnly: true archive_serial_number: type: integer maximum: 4294967295 minimum: 0 format: int64 writeOnly: true title: ASN custom_fields: type: array items: type: integer writeOnly: true title: Custom fields writeOnly: true from_webui: type: boolean writeOnly: true title: Documents are from Paperless-ngx WebUI required: - document Profile: type: object properties: email: type: string format: email password: type: string first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 auth_token: type: string readOnly: true social_accounts: type: array items: $ref: '#/components/schemas/SocialAccount' readOnly: true has_usable_password: type: boolean readOnly: true is_mfa_enabled: type: boolean readOnly: true required: - auth_token - has_usable_password - is_mfa_enabled - social_accounts RuleTypeEnum: enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12 - 13 - 14 - 15 - 16 - 17 - 18 - 19 - 20 - 21 - 22 - 23 - 24 - 25 - 26 - 27 - 28 - 29 - 30 - 31 - 32 - 33 - 34 - 35 - 36 - 37 - 38 - 39 - 40 - 41 - 42 - 43 - 44 - 45 - 46 - 47 type: integer description: |- * `0` - title contains * `1` - content contains * `2` - ASN is * `3` - correspondent is * `4` - document type is * `5` - is in inbox * `6` - has tag * `7` - has any tag * `8` - created before * `9` - created after * `10` - created year is * `11` - created month is * `12` - created day is * `13` - added before * `14` - added after * `15` - modified before * `16` - modified after * `17` - does not have tag * `18` - does not have ASN * `19` - title or content contains * `20` - fulltext query * `21` - more like this * `22` - has tags in * `23` - ASN greater than * `24` - ASN less than * `25` - storage path is * `26` - has correspondent in * `27` - does not have correspondent in * `28` - has document type in * `29` - does not have document type in * `30` - has storage path in * `31` - does not have storage path in * `32` - owner is * `33` - has owner in * `34` - does not have owner * `35` - does not have owner in * `36` - has custom field value * `37` - is shared by me * `38` - has custom fields * `39` - has custom field in * `40` - does not have custom field in * `41` - does not have custom field * `42` - custom fields query * `43` - created to * `44` - created from * `45` - added to * `46` - added from * `47` - mime type is SanityCheck: type: object properties: status: type: string error: type: string last_run: type: string format: date-time required: - error - last_run - status SavedView: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 show_on_dashboard: type: boolean show_in_sidebar: type: boolean sort_field: type: string nullable: true maxLength: 128 sort_reverse: type: boolean filter_rules: type: array items: $ref: '#/components/schemas/SavedViewFilterRule' page_size: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 nullable: true title: View page size display_mode: nullable: true title: View display mode oneOf: - $ref: '#/components/schemas/DisplayModeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' display_fields: nullable: true title: Document display fields owner: type: integer nullable: true user_can_change: type: boolean readOnly: true required: - filter_rules - id - name - show_in_sidebar - show_on_dashboard - user_can_change SavedViewFilterRule: type: object properties: rule_type: allOf: - $ref: '#/components/schemas/RuleTypeEnum' minimum: 0 maximum: 9223372036854775807 value: type: string nullable: true maxLength: 255 required: - rule_type SavedViewFilterRuleRequest: type: object properties: rule_type: allOf: - $ref: '#/components/schemas/RuleTypeEnum' minimum: 0 maximum: 9223372036854775807 value: type: string nullable: true maxLength: 255 required: - rule_type SavedViewRequest: type: object properties: name: type: string minLength: 1 maxLength: 128 show_on_dashboard: type: boolean show_in_sidebar: type: boolean sort_field: type: string nullable: true maxLength: 128 sort_reverse: type: boolean filter_rules: type: array items: $ref: '#/components/schemas/SavedViewFilterRuleRequest' page_size: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 nullable: true title: View page size display_mode: nullable: true title: View display mode oneOf: - $ref: '#/components/schemas/DisplayModeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' display_fields: nullable: true title: Document display fields owner: type: integer nullable: true required: - filter_rules - name - show_in_sidebar - show_on_dashboard ScheduleDateFieldEnum: enum: - added - created - modified - custom_field type: string description: |- * `added` - Added * `created` - Created * `modified` - Modified * `custom_field` - Custom Field SearchResult: type: object properties: total: type: integer documents: type: array items: $ref: '#/components/schemas/Document' saved_views: type: array items: $ref: '#/components/schemas/SavedView' tags: type: array items: $ref: '#/components/schemas/Tag' correspondents: type: array items: $ref: '#/components/schemas/Correspondent' document_types: type: array items: $ref: '#/components/schemas/DocumentType' storage_paths: type: array items: $ref: '#/components/schemas/StoragePath' users: type: array items: $ref: '#/components/schemas/User' groups: type: array items: $ref: '#/components/schemas/Group' mail_rules: type: array items: $ref: '#/components/schemas/MailRule' mail_accounts: type: array items: $ref: '#/components/schemas/MailAccount' workflows: type: array items: $ref: '#/components/schemas/Workflow' custom_fields: type: array items: $ref: '#/components/schemas/CustomField' required: - correspondents - custom_fields - document_types - documents - groups - mail_accounts - mail_rules - saved_views - storage_paths - tags - total - users - workflows SelectionData: type: object properties: selected_correspondents: type: array items: $ref: '#/components/schemas/CorrespondentCounts' selected_tags: type: array items: $ref: '#/components/schemas/TagCounts' selected_document_types: type: array items: $ref: '#/components/schemas/DocumentTypeCounts' selected_storage_paths: type: array items: $ref: '#/components/schemas/StoragePathCounts' selected_custom_fields: type: array items: $ref: '#/components/schemas/CustomFieldCounts' required: - selected_correspondents - selected_custom_fields - selected_document_types - selected_storage_paths - selected_tags ShareLink: type: object properties: id: type: integer readOnly: true created: type: string format: date-time readOnly: true expiration: type: string format: date-time nullable: true slug: type: string readOnly: true pattern: ^[-a-zA-Z0-9_]+$ document: type: integer file_version: $ref: '#/components/schemas/FileVersionEnum' required: - created - id - slug ShareLinkRequest: type: object properties: expiration: type: string format: date-time nullable: true document: type: integer file_version: $ref: '#/components/schemas/FileVersionEnum' SkipArchiveFileEnum: enum: - never - with_text - always type: string description: |- * `never` - never * `with_text` - with_text * `always` - always SocialAccount: type: object properties: id: type: integer readOnly: true provider: type: string maxLength: 200 name: type: string readOnly: true required: - id - name - provider SocialAccountRequest: type: object properties: provider: type: string minLength: 1 maxLength: 200 required: - provider SourcesEnum: enum: - 1 - 2 - 3 - 4 type: integer description: |- * `1` - Consume Folder * `2` - Api Upload * `3` - Mail Fetch * `4` - Web UI StatusEnum: enum: - FAILURE - PENDING - RECEIVED - RETRY - REVOKED - STARTED - SUCCESS type: string description: |- * `FAILURE` - FAILURE * `PENDING` - PENDING * `RECEIVED` - RECEIVED * `RETRY` - RETRY * `REVOKED` - REVOKED * `STARTED` - STARTED * `SUCCESS` - SUCCESS Storage: type: object properties: total: type: integer available: type: integer required: - available - total StoragePath: type: object properties: id: type: integer readOnly: true slug: type: string readOnly: true name: type: string maxLength: 128 path: type: string match: type: string maxLength: 256 matching_algorithm: allOf: - $ref: '#/components/schemas/MatchingAlgorithm' minimum: 0 maximum: 9223372036854775807 is_insensitive: type: boolean document_count: type: integer readOnly: true owner: type: integer nullable: true user_can_change: type: boolean readOnly: true required: - document_count - id - name - path - slug - user_can_change StoragePathCounts: type: object properties: id: type: integer document_count: type: integer required: - document_count - id StoragePathRequest: type: object properties: name: type: string minLength: 1 maxLength: 128 path: type: string minLength: 1 match: type: string maxLength: 256 matching_algorithm: allOf: - $ref: '#/components/schemas/MatchingAlgorithm' minimum: 0 maximum: 9223372036854775807 is_insensitive: type: boolean owner: type: integer nullable: true set_permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer writeOnly: true required: - name - path Suggestions: type: object properties: correspondents: type: array items: type: integer tags: type: array items: type: integer document_types: type: array items: type: integer storage_paths: type: array items: type: integer dates: type: array items: type: string required: - correspondents - dates - document_types - storage_paths - tags SystemStatus: type: object properties: pngx_version: type: string server_os: type: string install_type: type: string storage: $ref: '#/components/schemas/Storage' database: $ref: '#/components/schemas/Database' tasks: $ref: '#/components/schemas/Tasks' index: $ref: '#/components/schemas/Index' classifier: $ref: '#/components/schemas/Classifier' sanity_check: $ref: '#/components/schemas/SanityCheck' required: - classifier - database - index - install_type - pngx_version - sanity_check - server_os - storage - tasks Tag: type: object properties: id: type: integer readOnly: true slug: type: string readOnly: true name: type: string maxLength: 128 color: type: string maxLength: 7 text_color: type: string readOnly: true match: type: string maxLength: 256 matching_algorithm: allOf: - $ref: '#/components/schemas/MatchingAlgorithm' minimum: 0 maximum: 9223372036854775807 is_insensitive: type: boolean is_inbox_tag: type: boolean description: 'Marks this tag as an inbox tag: All newly consumed documents will be tagged with inbox tags.' document_count: type: integer readOnly: true owner: type: integer nullable: true user_can_change: type: boolean readOnly: true required: - document_count - id - name - slug - text_color - user_can_change TagCounts: type: object properties: id: type: integer document_count: type: integer required: - document_count - id TagRequest: type: object properties: name: type: string minLength: 1 maxLength: 128 color: type: string minLength: 1 maxLength: 7 match: type: string maxLength: 256 matching_algorithm: allOf: - $ref: '#/components/schemas/MatchingAlgorithm' minimum: 0 maximum: 9223372036854775807 is_insensitive: type: boolean is_inbox_tag: type: boolean description: 'Marks this tag as an inbox tag: All newly consumed documents will be tagged with inbox tags.' owner: type: integer nullable: true set_permissions: type: object properties: view: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer change: type: object properties: users: type: array items: type: integer groups: type: array items: type: integer writeOnly: true required: - name TaskNameEnum: enum: - consume_file - train_classifier - check_sanity - index_optimize type: string description: |- * `consume_file` - Consume File * `train_classifier` - Train Classifier * `check_sanity` - Check Sanity * `index_optimize` - Index Optimize Tasks: type: object properties: redis_url: type: string redis_status: type: string redis_error: type: string celery_status: type: string required: - celery_status - redis_error - redis_status - redis_url TasksView: type: object properties: id: type: integer readOnly: true task_id: type: string description: Celery ID for the Task that was run maxLength: 255 task_name: nullable: true description: |- Name of the task that was run * `consume_file` - Consume File * `train_classifier` - Train Classifier * `check_sanity` - Check Sanity * `index_optimize` - Index Optimize oneOf: - $ref: '#/components/schemas/TaskNameEnum' - $ref: '#/components/schemas/NullEnum' task_file_name: type: string nullable: true title: Task Filename description: Name of the file which the Task was run for maxLength: 255 date_created: type: string format: date-time nullable: true title: Created DateTime description: Datetime field when the task result was created in UTC date_done: type: string format: date-time nullable: true title: Completed DateTime description: Datetime field when the task was completed in UTC type: allOf: - $ref: '#/components/schemas/TasksViewTypeEnum' title: Task Type description: |- The type of task that was run * `auto_task` - Auto Task * `scheduled_task` - Scheduled Task * `manual_task` - Manual Task status: allOf: - $ref: '#/components/schemas/StatusEnum' title: Task State description: |- Current state of the task being run * `FAILURE` - FAILURE * `PENDING` - PENDING * `RECEIVED` - RECEIVED * `RETRY` - RETRY * `REVOKED` - REVOKED * `STARTED` - STARTED * `SUCCESS` - SUCCESS result: type: string nullable: true title: Result Data description: The data returned by the task acknowledged: type: boolean description: If the task is acknowledged via the frontend or API related_document: type: string nullable: true readOnly: true owner: type: integer nullable: true required: - id - related_document - task_id TasksViewRequest: type: object properties: task_id: type: string minLength: 1 description: Celery ID for the Task that was run maxLength: 255 task_name: nullable: true description: |- Name of the task that was run * `consume_file` - Consume File * `train_classifier` - Train Classifier * `check_sanity` - Check Sanity * `index_optimize` - Index Optimize oneOf: - $ref: '#/components/schemas/TaskNameEnum' - $ref: '#/components/schemas/NullEnum' task_file_name: type: string nullable: true minLength: 1 title: Task Filename description: Name of the file which the Task was run for maxLength: 255 date_created: type: string format: date-time nullable: true title: Created DateTime description: Datetime field when the task result was created in UTC date_done: type: string format: date-time nullable: true title: Completed DateTime description: Datetime field when the task was completed in UTC type: allOf: - $ref: '#/components/schemas/TasksViewTypeEnum' title: Task Type description: |- The type of task that was run * `auto_task` - Auto Task * `scheduled_task` - Scheduled Task * `manual_task` - Manual Task status: allOf: - $ref: '#/components/schemas/StatusEnum' title: Task State description: |- Current state of the task being run * `FAILURE` - FAILURE * `PENDING` - PENDING * `RECEIVED` - RECEIVED * `RETRY` - RETRY * `REVOKED` - REVOKED * `STARTED` - STARTED * `SUCCESS` - SUCCESS result: type: string nullable: true minLength: 1 title: Result Data description: The data returned by the task acknowledged: type: boolean description: If the task is acknowledged via the frontend or API owner: type: integer nullable: true required: - task_id TasksViewTypeEnum: enum: - auto_task - scheduled_task - manual_task type: string description: |- * `auto_task` - Auto Task * `scheduled_task` - Scheduled Task * `manual_task` - Manual Task TrashActionEnum: enum: - restore - empty type: string description: |- * `restore` - restore * `empty` - empty TrashRequest: type: object properties: documents: type: array items: type: integer writeOnly: true action: allOf: - $ref: '#/components/schemas/TrashActionEnum' writeOnly: true required: - action UiSettingsView: type: object properties: id: type: integer readOnly: true settings: type: object additionalProperties: {} nullable: true required: - id UiSettingsViewRequest: type: object properties: settings: type: object additionalProperties: {} nullable: true UnpaperCleanEnum: enum: - clean - clean-final - none type: string description: |- * `clean` - clean * `clean-final` - clean-final * `none` - none User: type: object properties: id: type: integer readOnly: true username: type: string description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. pattern: ^[\w.@+-]+$ maxLength: 150 email: type: string format: email title: Email address maxLength: 254 password: type: string first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 date_joined: type: string format: date-time is_staff: type: boolean title: Staff status description: Designates whether the user can log into this admin site. is_active: type: boolean title: Active description: Designates whether this user should be treated as active. Unselect this instead of deleting accounts. is_superuser: type: boolean title: Superuser status description: Designates that this user has all permissions without explicitly assigning them. groups: type: array items: type: integer description: The groups this user belongs to. A user will get all permissions granted to each of their groups. user_permissions: type: array items: type: string inherited_permissions: type: array items: type: string readOnly: true is_mfa_enabled: type: boolean readOnly: true required: - id - inherited_permissions - is_mfa_enabled - username UserRequest: type: object properties: username: type: string minLength: 1 description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. pattern: ^[\w.@+-]+$ maxLength: 150 email: type: string format: email title: Email address maxLength: 254 password: type: string minLength: 1 first_name: type: string maxLength: 150 last_name: type: string maxLength: 150 date_joined: type: string format: date-time is_staff: type: boolean title: Staff status description: Designates whether the user can log into this admin site. is_active: type: boolean title: Active description: Designates whether this user should be treated as active. Unselect this instead of deleting accounts. is_superuser: type: boolean title: Superuser status description: Designates that this user has all permissions without explicitly assigning them. groups: type: array items: type: integer description: The groups this user belongs to. A user will get all permissions granted to each of their groups. user_permissions: type: array items: type: string minLength: 1 required: - username Workflow: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 256 order: type: integer enabled: type: boolean triggers: type: array items: $ref: '#/components/schemas/WorkflowTrigger' actions: type: array items: $ref: '#/components/schemas/WorkflowAction' required: - actions - id - name - triggers WorkflowAction: type: object properties: id: type: integer nullable: true type: allOf: - $ref: '#/components/schemas/WorkflowActionTypeEnum' title: Workflow Action Type minimum: 0 maximum: 9223372036854775807 assign_title: type: string nullable: true description: Assign a document title, can include some placeholders, see documentation. maxLength: 256 assign_tags: type: array items: type: integer nullable: true assign_correspondent: type: integer nullable: true assign_document_type: type: integer nullable: true assign_storage_path: type: integer nullable: true assign_owner: type: integer nullable: true title: Assign this owner assign_view_users: type: array items: type: integer title: Grant view permissions to these users title: Grant view permissions to these users assign_view_groups: type: array items: type: integer title: Grant view permissions to these groups title: Grant view permissions to these groups assign_change_users: type: array items: type: integer title: Grant change permissions to these users title: Grant change permissions to these users assign_change_groups: type: array items: type: integer title: Grant change permissions to these groups title: Grant change permissions to these groups assign_custom_fields: type: array items: type: integer title: Assign these custom fields title: Assign these custom fields assign_custom_fields_values: nullable: true title: Custom field values description: Optional values to assign to the custom fields. remove_all_tags: type: boolean remove_tags: type: array items: type: integer title: Remove these tag(s) title: Remove these tag(s) remove_all_correspondents: type: boolean remove_correspondents: type: array items: type: integer title: Remove these correspondent(s) title: Remove these correspondent(s) remove_all_document_types: type: boolean remove_document_types: type: array items: type: integer title: Remove these document type(s) title: Remove these document type(s) remove_all_storage_paths: type: boolean remove_storage_paths: type: array items: type: integer title: Remove these storage path(s) title: Remove these storage path(s) remove_custom_fields: type: array items: type: integer title: Remove these custom fields title: Remove these custom fields remove_all_custom_fields: type: boolean remove_all_owners: type: boolean remove_owners: type: array items: type: integer title: Remove these owner(s) title: Remove these owner(s) remove_all_permissions: type: boolean remove_view_users: type: array items: type: integer title: Remove view permissions for these users title: Remove view permissions for these users remove_view_groups: type: array items: type: integer title: Remove view permissions for these groups title: Remove view permissions for these groups remove_change_users: type: array items: type: integer title: Remove change permissions for these users title: Remove change permissions for these users remove_change_groups: type: array items: type: integer title: Remove change permissions for these groups title: Remove change permissions for these groups email: allOf: - $ref: '#/components/schemas/WorkflowActionEmail' nullable: true webhook: allOf: - $ref: '#/components/schemas/WorkflowActionWebhook' nullable: true WorkflowActionEmail: type: object properties: id: type: integer nullable: true subject: type: string title: Email subject description: The subject of the email, can include some placeholders, see documentation. maxLength: 256 body: type: string title: Email body description: The body (message) of the email, can include some placeholders, see documentation. to: type: string title: Emails to description: The destination email addresses, comma separated. include_document: type: boolean title: Include document in email required: - body - subject - to WorkflowActionEmailRequest: type: object properties: id: type: integer nullable: true subject: type: string minLength: 1 title: Email subject description: The subject of the email, can include some placeholders, see documentation. maxLength: 256 body: type: string minLength: 1 title: Email body description: The body (message) of the email, can include some placeholders, see documentation. to: type: string minLength: 1 title: Emails to description: The destination email addresses, comma separated. include_document: type: boolean title: Include document in email required: - body - subject - to WorkflowActionRequest: type: object properties: id: type: integer nullable: true type: allOf: - $ref: '#/components/schemas/WorkflowActionTypeEnum' title: Workflow Action Type minimum: 0 maximum: 9223372036854775807 assign_title: type: string nullable: true description: Assign a document title, can include some placeholders, see documentation. maxLength: 256 assign_tags: type: array items: type: integer nullable: true assign_correspondent: type: integer nullable: true assign_document_type: type: integer nullable: true assign_storage_path: type: integer nullable: true assign_owner: type: integer nullable: true title: Assign this owner assign_view_users: type: array items: type: integer title: Grant view permissions to these users title: Grant view permissions to these users assign_view_groups: type: array items: type: integer title: Grant view permissions to these groups title: Grant view permissions to these groups assign_change_users: type: array items: type: integer title: Grant change permissions to these users title: Grant change permissions to these users assign_change_groups: type: array items: type: integer title: Grant change permissions to these groups title: Grant change permissions to these groups assign_custom_fields: type: array items: type: integer title: Assign these custom fields title: Assign these custom fields assign_custom_fields_values: nullable: true title: Custom field values description: Optional values to assign to the custom fields. remove_all_tags: type: boolean remove_tags: type: array items: type: integer title: Remove these tag(s) title: Remove these tag(s) remove_all_correspondents: type: boolean remove_correspondents: type: array items: type: integer title: Remove these correspondent(s) title: Remove these correspondent(s) remove_all_document_types: type: boolean remove_document_types: type: array items: type: integer title: Remove these document type(s) title: Remove these document type(s) remove_all_storage_paths: type: boolean remove_storage_paths: type: array items: type: integer title: Remove these storage path(s) title: Remove these storage path(s) remove_custom_fields: type: array items: type: integer title: Remove these custom fields title: Remove these custom fields remove_all_custom_fields: type: boolean remove_all_owners: type: boolean remove_owners: type: array items: type: integer title: Remove these owner(s) title: Remove these owner(s) remove_all_permissions: type: boolean remove_view_users: type: array items: type: integer title: Remove view permissions for these users title: Remove view permissions for these users remove_view_groups: type: array items: type: integer title: Remove view permissions for these groups title: Remove view permissions for these groups remove_change_users: type: array items: type: integer title: Remove change permissions for these users title: Remove change permissions for these users remove_change_groups: type: array items: type: integer title: Remove change permissions for these groups title: Remove change permissions for these groups email: allOf: - $ref: '#/components/schemas/WorkflowActionEmailRequest' nullable: true webhook: allOf: - $ref: '#/components/schemas/WorkflowActionWebhookRequest' nullable: true WorkflowActionTypeEnum: enum: - 1 - 2 - 3 - 4 type: integer description: |- * `1` - Assignment * `2` - Removal * `3` - Email * `4` - Webhook WorkflowActionWebhook: type: object properties: id: type: integer nullable: true url: type: string title: Webhook url description: The destination URL for the notification. maxLength: 256 use_params: type: boolean title: Use parameters as_json: type: boolean title: Send as JSON params: nullable: true title: Webhook parameters description: The parameters to send with the webhook URL if body not used. body: type: string nullable: true title: Webhook body description: The body to send with the webhook URL if parameters not used. headers: nullable: true title: Webhook headers description: The headers to send with the webhook URL. include_document: type: boolean title: Include document in webhook required: - url WorkflowActionWebhookRequest: type: object properties: id: type: integer nullable: true url: type: string minLength: 1 title: Webhook url description: The destination URL for the notification. maxLength: 256 use_params: type: boolean title: Use parameters as_json: type: boolean title: Send as JSON params: nullable: true title: Webhook parameters description: The parameters to send with the webhook URL if body not used. body: type: string nullable: true title: Webhook body description: The body to send with the webhook URL if parameters not used. headers: nullable: true title: Webhook headers description: The headers to send with the webhook URL. include_document: type: boolean title: Include document in webhook required: - url WorkflowRequest: type: object properties: name: type: string minLength: 1 maxLength: 256 order: type: integer enabled: type: boolean triggers: type: array items: $ref: '#/components/schemas/WorkflowTriggerRequest' actions: type: array items: $ref: '#/components/schemas/WorkflowActionRequest' required: - actions - name - triggers WorkflowTrigger: type: object properties: id: type: integer nullable: true sources: type: array items: $ref: '#/components/schemas/SourcesEnum' default: - 1 - 2 - 3 type: allOf: - $ref: '#/components/schemas/WorkflowTriggerTypeEnum' title: Trigger Type filter_path: type: string nullable: true description: Only consume documents with a path that matches this if specified. Wildcards specified as * are allowed. Case insensitive. maxLength: 256 filter_filename: type: string nullable: true description: Only consume documents which entirely match this filename if specified. Wildcards such as *.pdf or *invoice* are allowed. Case insensitive. maxLength: 256 filter_mailrule: type: integer nullable: true title: Filter documents from this mail rule matching_algorithm: allOf: - $ref: '#/components/schemas/WorkflowTriggerMatchingAlgorithmEnum' minimum: 0 maximum: 9223372036854775807 match: type: string maxLength: 256 is_insensitive: type: boolean filter_has_tags: type: array items: type: integer title: Has these tag(s) title: Has these tag(s) filter_has_correspondent: type: integer nullable: true title: Has this correspondent filter_has_document_type: type: integer nullable: true title: Has this document type schedule_offset_days: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 description: The number of days to offset the schedule trigger by. schedule_is_recurring: type: boolean description: If the schedule should be recurring. schedule_recurring_interval_days: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 title: Schedule recurring delay in days description: The number of days between recurring schedule triggers. schedule_date_field: allOf: - $ref: '#/components/schemas/ScheduleDateFieldEnum' description: |- The field to check for a schedule trigger. * `added` - Added * `created` - Created * `modified` - Modified * `custom_field` - Custom Field schedule_date_custom_field: type: integer nullable: true required: - type WorkflowTriggerMatchingAlgorithmEnum: enum: - 0 - 1 - 2 - 3 - 4 - 5 type: integer description: |- * `0` - None * `1` - Any word * `2` - All words * `3` - Exact match * `4` - Regular expression * `5` - Fuzzy word WorkflowTriggerRequest: type: object properties: id: type: integer nullable: true sources: type: array items: $ref: '#/components/schemas/SourcesEnum' default: - 1 - 2 - 3 type: allOf: - $ref: '#/components/schemas/WorkflowTriggerTypeEnum' title: Trigger Type filter_path: type: string nullable: true description: Only consume documents with a path that matches this if specified. Wildcards specified as * are allowed. Case insensitive. maxLength: 256 filter_filename: type: string nullable: true description: Only consume documents which entirely match this filename if specified. Wildcards such as *.pdf or *invoice* are allowed. Case insensitive. maxLength: 256 filter_mailrule: type: integer nullable: true title: Filter documents from this mail rule matching_algorithm: allOf: - $ref: '#/components/schemas/WorkflowTriggerMatchingAlgorithmEnum' minimum: 0 maximum: 9223372036854775807 match: type: string maxLength: 256 is_insensitive: type: boolean filter_has_tags: type: array items: type: integer title: Has these tag(s) title: Has these tag(s) filter_has_correspondent: type: integer nullable: true title: Has this correspondent filter_has_document_type: type: integer nullable: true title: Has this document type schedule_offset_days: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 description: The number of days to offset the schedule trigger by. schedule_is_recurring: type: boolean description: If the schedule should be recurring. schedule_recurring_interval_days: type: integer maximum: 9223372036854775807 minimum: 1 format: int64 title: Schedule recurring delay in days description: The number of days between recurring schedule triggers. schedule_date_field: allOf: - $ref: '#/components/schemas/ScheduleDateFieldEnum' description: |- The field to check for a schedule trigger. * `added` - Added * `created` - Created * `modified` - Modified * `custom_field` - Custom Field schedule_date_custom_field: type: integer nullable: true required: - type WorkflowTriggerTypeEnum: enum: - 1 - 2 - 3 - 4 type: integer description: |- * `1` - Consumption Started * `2` - Document Added * `3` - Document Updated * `4` - Scheduled securitySchemes: PaperelessBasicAuthentication: type: http scheme: basic cookieAuth: type: apiKey in: cookie name: sessionid tokenAuth: type: apiKey in: header name: Authorization description: Token-based authentication with required prefix "Token" externalDocs: description: Paperless-ngx API Documentation url: https://docs.paperless-ngx.com/api/

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/baruchiro/paperless-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server