x-paginationLimit: &metaPaginationLimit name: limit in: query description: How many items to return at one time (max 100) required: false schema: type: integer format: int32 x-paginationOffset: &metaPaginationOffset name: offset in: query description: How many items skip in return required: false schema: type: integer format: int32 x-errorResponse: default: &metaErrorResponse description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" x-metaEdit: &metaEdit createdOn: &metaCreatedOn type: string format: datetime title: Czas utworzenia treści readOnly: true createdBy: &metaCreatedBy type: string description: User ID responsible for creating the content readOnly: true modifiedOn: &metaModifiedOn type: string format: datetime title: Czas ostatniej modyfikacji treści readOnly: true modifiedBy: &metaModifiedBy type: string title: User ID responsible for the latest content change readOnly: true openapi: "3.0.0" info: version: 1.0.0 title: Small_EOD contact: name: Adam Dobrawy email: adam.dobrawy@siecobywatelska.pl license: name: MIT servers: - url: https://small-eod.siecobywatelska.pl/v1 description: Production server (uses live data) - url: https://demo.small-eod.siecobywatelska.pl/v1 description: Sandbox server (uses test data) - url: https://localhost:8080/v1 description: Development server (uses ephemeral data) security: - sessionAuth: [] tags: - name: administrativeUnit - name: case - name: collection - name: description - name: dictionary - name: event - name: file - name: institution - name: letter - name: note - name: notifiedUser - name: responsibleUser - name: session - name: tagNamespace - name: user paths: /case: get: summary: List all cases operationId: listCase tags: - case parameters: - *metaPaginationLimit - *metaPaginationOffset - name: institution in: query description: Institution ID or NULL required: false schema: type: integer format: int32 responses: '200': description: A paged array of cases content: application/json: schema: type: array items: $ref: "#/components/schemas/Case" post: summary: Create a case operationId: createCase tags: - case requestBody: description: New case required: true content: application/json: schema: $ref: '#/components/schemas/Case' responses: '201': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Case" default: *metaErrorResponse /case/{caseId}: get: summary: Info for a specific case operationId: showCaseById tags: - case parameters: - name: caseId in: path required: true description: The id of the case to retrieve schema: type: number format: caseId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Case" default: *metaErrorResponse patch: summary: modified case operationId: updateCaseById tags: - case parameters: - name: caseId in: path required: true description: The id of the case to modify schema: type: number format: caseId requestBody: description: Modified case required: true content: application/json: schema: $ref: '#/components/schemas/Case' responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Case" default: *metaErrorResponse delete: description: Deletes a single case based on the ID supplied operationId: deleteCase parameters: - name: caseId in: path description: The id of the case to delete required: true schema: type: integer format: int64 tags: - case responses: '204': description: case deleted default: description: unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /case/{caseId}/responsibleUser: post: summary: Create a responsible user reference of case operationId: createResponsibleUser parameters: - name: caseId in: path required: true description: The id of the case to modify schema: type: number format: caseId tags: - responsibleUser requestBody: description: New responsible user required: true content: application/json: schema: $ref: '#/components/schemas/UserRef' responses: '201': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/UserRef" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /case/{caseId}/responsibleUser/{responsibleUserId}: get: summary: Info for a specific responsible user of case operationId: showcaseById tags: - responsibleUser parameters: - name: caseId in: path required: true description: The id of the case to retrieve schema: type: number format: caseId - name: responsibleUserId in: path required: true description: The id of the responsible user to retrieve schema: type: number format: objectId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/UserRef" default: *metaErrorResponse delete: description: Deletes a single responsible user based on the ID supplied operationId: deleteResponsibleUser parameters: - name: caseId in: path required: true description: The id of the case to modify schema: type: number format: caseId - name: responsibleUserId in: path required: true description: The id of the responsible user to delete schema: type: number format: objectId tags: - responsibleUser responses: '204': description: case deleted default: description: unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /case/{caseId}/notifiedUser: post: summary: Create a notified user reference of case operationId: createNotifiedUser parameters: - name: caseId in: path required: true description: The id of the case to modify schema: type: number format: caseId tags: - notifiedUser requestBody: description: New notified user required: true content: application/json: schema: $ref: '#/components/schemas/UserRef' responses: '201': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/UserRef" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /case/{caseId}/notifiedUser/{notifiedUserId}: get: summary: Info for a specific notified user of case operationId: shownotifiedUserById tags: - notifiedUser parameters: - name: caseId in: path required: true description: The id of the case to modify schema: type: number format: caseId - name: notifiedUserId in: path required: true description: The id of the responsible user to retrieve schema: type: number format: objectId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/UserRef" default: *metaErrorResponse delete: description: Deletes a single notified user based on the ID supplied operationId: deleteNotifiedUser parameters: - name: caseId in: path description: The id of the case to modify required: true schema: type: integer format: int64 - name: notifiedUserId in: path required: true description: The id of the responsible user to delete schema: type: number format: objectId tags: - notifiedUser responses: '204': description: case deleted default: description: unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /letter: get: summary: List all letters operationId: listLetter tags: - letter parameters: - *metaPaginationLimit - *metaPaginationOffset - name: case in: query description: Case ID required: false schema: type: integer format: int32 responses: '200': description: A paged array of letter content: application/json: schema: type: array items: $ref: "#/components/schemas/Letter" post: summary: Create a letter operationId: createLetter tags: - letter requestBody: description: New letter required: true content: application/json: schema: $ref: '#/components/schemas/Letter' responses: '201': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Letter" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /letter/{letterId}: get: summary: Info for a specific letter operationId: showLetterById tags: - letter parameters: - name: letterId in: path required: true description: The id of the letter to retrieve schema: type: number format: letterId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Letter" default: *metaErrorResponse delete: description: Deletes a single letter based on the ID supplied operationId: deleteLetter parameters: - name: letterId in: path description: The id of the letter to delete required: true schema: type: integer format: int64 tags: - letter responses: '204': description: letter deleted default: description: unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /letter/{letterId}/file: post: summary: Create a file operationId: createFile parameters: - name: letterId in: path required: true description: The id of the letter to retrieve schema: type: number format: letterId tags: - file requestBody: description: New file required: true content: application/json: schema: $ref: '#/components/schemas/File' responses: '201': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/File" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /letter/file/sign: post: summary: Create a pre-signed URLs for file operationId: createPreSignedUrl tags: - file requestBody: description: New file signature request required: true content: application/json: schema: $ref: '#/components/schemas/FileSigner' responses: '201': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/FileSigner" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /letter/{letterId}/file/{fileId}: get: summary: Info for a specific file operationId: showFileByLetterId tags: - file parameters: - name: letterId in: path required: true description: The id of the letter of file schema: type: number format: letterId - name: fileId in: path required: true description: The id of the file to retrieve schema: type: number format: letterId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Letter" default: *metaErrorResponse /collection: get: summary: List all collections operationId: listCollection tags: - collection parameters: - *metaPaginationLimit - *metaPaginationOffset - name: case in: query description: Case ID required: false schema: type: integer format: int32 responses: '200': description: A paged array of collection content: application/json: schema: type: array items: $ref: "#/components/schemas/Collection" post: summary: Create a collection operationId: createCollection tags: - collection requestBody: description: New collection required: true content: application/json: schema: $ref: '#/components/schemas/Collection' responses: '201': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Collection" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /collection/{collectionId}: get: summary: Info for a specific collection operationId: showCollectionById security: - sessionAuth: [] - bearerAuth: [] tags: - collection parameters: - name: collectionId in: path required: true description: The id of the collection to retrieve schema: type: number format: collectionId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Collection" default: *metaErrorResponse patch: summary: modified collection operationId: updateCollectionById tags: - collection parameters: - name: collectionId in: path required: true description: The id of the collection to modify schema: type: number format: collectionId requestBody: description: Modified collection required: true content: application/json: schema: $ref: '#/components/schemas/Collection' responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Collection" default: *metaErrorResponse delete: description: Deletes a single collection based on the ID supplied operationId: deleteCollection parameters: - name: collectionId in: path description: The id of the collection to delete required: true schema: type: integer format: int64 tags: - collection responses: '204': description: collection deleted default: description: unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /collection/{collectionId}/case: get: summary: Cases match query for a specific collection operationId: showCaseByCollection security: - sessionAuth: [] - bearerAuth: [] tags: - collection parameters: - name: collectionId in: path required: true description: The id of the collection to retrieve schema: type: number format: collectionId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Case" default: *metaErrorResponse /collection/{collectionId}/case/{caseId}/letter: get: summary: Letters of cases match query for a specific collection operationId: showLetterCaseByCollection tags: - collection security: - sessionAuth: [] - bearerAuth: [] parameters: - name: collectionId in: path required: true description: The id of the collection to retrieve schema: type: number format: collectionId - name: caseId in: path required: true description: The id of the collection to retrieve schema: type: number format: caseId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Letter" default: *metaErrorResponse /collection/{collectionId}/case/{caseId}/note: get: summary: Notes of case match query for a specific collection operationId: showNoteCaseByCollection tags: - collection security: - sessionAuth: [] - bearerAuth: [] parameters: - name: collectionId in: path required: true description: The id of the collection to retrieve schema: type: number format: collectionId - name: caseId in: path required: true description: The id of the collection to retrieve schema: type: number format: caseId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Letter" default: *metaErrorResponse /collection/{collectionId}/case/{caseId}/event: get: summary: Events of case match query for a specific collection operationId: showEventCaseByCollection tags: - collection security: - sessionAuth: [] - bearerAuth: [] parameters: - name: collectionId in: path required: true description: The id of the collection to retrieve schema: type: number format: collectionId - name: caseId in: path required: true description: The id of the collection to retrieve schema: type: number format: caseId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Event" default: *metaErrorResponse /note: get: summary: List all notes of case operationId: listNote tags: - note parameters: - *metaPaginationLimit - *metaPaginationOffset - name: case in: query description: Case ID required: false schema: type: integer format: caseId responses: '200': description: A paged array of notes content: application/json: schema: type: array items: $ref: "#/components/schemas/Note" post: summary: Create a note operationId: createNote tags: - note requestBody: description: New note required: true content: application/json: schema: $ref: '#/components/schemas/Note' responses: '201': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Note" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /note/{noteId}: get: summary: Info for a specific note operationId: showNoteById tags: - note parameters: - name: noteId in: path required: true description: The id of the note to retrieve schema: type: number format: letterId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Note" default: *metaErrorResponse delete: description: Deletes a single note based on the ID supplied operationId: deleteNote parameters: - name: noteId in: path description: The id of the note to delete required: true schema: type: integer format: int64 tags: - note responses: '204': description: note deleted default: description: unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /event: get: summary: List all events of case operationId: listEvent tags: - event parameters: - *metaPaginationLimit - *metaPaginationOffset - name: case in: query description: Case ID required: false schema: type: integer format: caseId responses: '200': description: A paged array of events content: application/json: schema: type: array items: $ref: "#/components/schemas/Event" post: summary: Create a event operationId: createEvent tags: - event requestBody: description: New event required: true content: application/json: schema: $ref: '#/components/schemas/Event' responses: '201': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Event" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /event/{eventId}: get: summary: Info for a specific event operationId: showEventById tags: - event parameters: - name: eventId in: path required: true description: The id of the event to retrieve schema: type: number format: letterId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Event" default: *metaErrorResponse delete: description: Deletes a single event based on the ID supplied operationId: deleteEvent parameters: - name: eventId in: path description: The id of the event to delete required: true schema: type: integer format: int64 tags: - event responses: '204': description: event deleted default: description: unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /user: get: summary: List all users operationId: listUser tags: - user parameters: - *metaPaginationLimit - *metaPaginationOffset responses: '200': description: A paged array of users content: application/json: schema: type: array items: $ref: "#/components/schemas/User" post: summary: Create a user operationId: createUser tags: - user requestBody: description: New user required: true content: application/json: schema: $ref: '#/components/schemas/User' responses: '201': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/User" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /user/{userId}: get: summary: Info for a specific user operationId: showUserById tags: - user parameters: - name: userId in: path required: true description: The id of the user to retrieve schema: type: number format: letterId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/User" default: *metaErrorResponse delete: description: Deletes a single user based on the ID supplied operationId: deleteUser parameters: - name: userId in: path description: The id of the user to delete required: true schema: type: integer format: int64 tags: - user responses: '204': description: user deleted default: description: unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /user/{userId}/session: parameters: - name: userId in: path description: The id of the user to modify required: true schema: type: integer format: userId get: summary: List all sessions operationId: listSessionOfUser tags: - session responses: '200': description: A paged array of sessions content: application/json: schema: type: array items: $ref: "#/components/schemas/Session" post: summary: Create a session operationId: createSession security: - basicAuth: [] tags: - session requestBody: description: New session required: true content: application/json: schema: type: object responses: '201': description: Expected response to a valid request. Headers contains secret. content: application/json: schema: $ref: "#/components/schemas/Session" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /user/{userId}/session/{sessionId}: get: summary: Info for a specific session of user operationId: showSessionById tags: - session parameters: - name: userId in: path required: true description: The id of the user to retrieve schema: type: number format: letterId - name: sessionId in: path required: true description: The id of the user to retrieve schema: type: number format: letterId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Session" default: *metaErrorResponse delete: description: Deletes a single session based on the ID supplied operationId: deleteSession parameters: - name: userId in: path description: The id of the user to modify required: true schema: type: integer format: int64 - name: sessionId in: path description: The id of the session to delete required: true schema: type: integer format: int64 tags: - session responses: '204': description: session deleted default: description: unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /dictionary: get: summary: List all dictionaries operationId: listDictionary tags: - dictionary parameters: - *metaPaginationLimit - *metaPaginationOffset responses: '200': description: A paged array of dictionaries content: application/json: schema: type: array items: $ref: "#/components/schemas/Dictionary" post: summary: Create a dictionary operationId: createDictionary tags: - dictionary requestBody: description: New dictionary required: true content: application/json: schema: $ref: '#/components/schemas/Dictionary' responses: '201': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Dictionary" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /dictionary/{dictionaryId}: get: summary: Info for a specific dictionary operationId: showDictionaryById tags: - dictionary parameters: - name: dictionaryId in: path required: true description: The id of the dictionary to retrieve schema: type: number format: letterId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Dictionary" default: *metaErrorResponse delete: description: Deletes a single dictionary based on the ID supplied operationId: deleteDictionary parameters: - name: dictionaryId in: path description: The id of the dictionary to delete required: true schema: type: integer format: int64 tags: - dictionary responses: '204': description: dictionary deleted default: description: unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /description: get: summary: List all descriptions operationId: listDescription tags: - description parameters: - *metaPaginationLimit - *metaPaginationOffset responses: '200': description: A paged array of descriptions content: application/json: schema: type: array items: $ref: "#/components/schemas/Description" post: summary: Create a description operationId: createDescription tags: - description requestBody: description: New description required: true content: application/json: schema: $ref: '#/components/schemas/Description' responses: '201': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Description" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /description/{descriptionId}: get: summary: Info for a specific description operationId: showDescriptionById tags: - description parameters: - name: descriptionId in: path required: true description: The id of the description to retrieve schema: type: number format: letterId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Description" default: *metaErrorResponse delete: description: Deletes a single description based on the ID supplied operationId: deleteDescription parameters: - name: descriptionId in: path description: The id of the description to delete required: true schema: type: integer format: int64 tags: - description responses: '204': description: description deleted default: description: unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /institution: get: summary: List all institutions operationId: listInstitution tags: - institution parameters: - *metaPaginationLimit - *metaPaginationOffset responses: '200': description: A paged array of institutions content: application/json: schema: type: array items: $ref: "#/components/schemas/Institution" post: summary: Create a institution operationId: createInstitution tags: - institution requestBody: description: New institution required: true content: application/json: schema: $ref: '#/components/schemas/Institution' responses: '201': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/Institution" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /administrativeUnit: get: summary: List all administrative units operationId: listAdministrativeUnit tags: - administrativeUnit parameters: - *metaPaginationLimit - *metaPaginationOffset responses: '200': description: A paged array of administrative units content: application/json: schema: type: array items: $ref: "#/components/schemas/AdministrativeUnit" post: summary: Create a administrative unit operationId: createAdministrativeUnit tags: - administrativeUnit requestBody: description: New administrative unit required: true content: application/json: schema: $ref: '#/components/schemas/AdministrativeUnit' responses: '201': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/AdministrativeUnit" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /administrativeUnit/{administrativeUnitId}: get: summary: Info for a specific administrative unit operationId: showAdministrativeUnitById tags: - administrativeUnit parameters: - name: administrativeUnitId in: path required: true description: The id of the administrative unit to retrieve schema: type: number format: letterId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/AdministrativeUnit" default: *metaErrorResponse delete: description: Deletes a single administrative unit based on the ID supplied operationId: deleteAdministrativeUnit parameters: - name: administrativeUnitId in: path description: The id of the administrativeUnit to delete required: true schema: type: integer format: int64 tags: - administrativeUnit responses: '204': description: administrativeUnit deleted default: description: unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /tagNamespace: get: summary: List all tag namespaces operationId: listTagNamespace tags: - tagNamespace parameters: - *metaPaginationLimit - *metaPaginationOffset responses: '200': description: A paged array of tag namespaces content: application/json: schema: type: array items: $ref: "#/components/schemas/TagNamespace" post: summary: Create a tag namespace operationId: createTagNamespace tags: - tagNamespace requestBody: description: New tag namespace required: true content: application/json: schema: $ref: '#/components/schemas/TagNamespace' responses: '201': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/TagNamespace" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /tagNamespace/{tagNamespaceId}: get: summary: Info for a specific tag namespace operationId: showTagNamespaceById tags: - tagNamespace parameters: - name: tagNamespaceId in: path required: true description: The id of the tag namespace to retrieve schema: type: number format: letterId responses: '200': description: Expected response to a valid request content: application/json: schema: $ref: "#/components/schemas/TagNamespace" default: *metaErrorResponse delete: description: Deletes a single tag namespace based on the ID supplied operationId: deleteTagNamespace parameters: - name: tagNamespaceId in: path description: The id of the tag namespace to delete required: true schema: type: integer format: int64 tags: - tagNamespace responses: '204': description: Tag Namespace deleted default: description: unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' components: securitySchemes: basicAuth: type: http scheme: basic sessionAuth: type: apiKey in: cookie name: session bearerAuth: type: http scheme: bearer bearerFormat: JWT schemas: Dictionary: type: object description: A collection of dictionary data for categorizing and collecting statistical information required: - id - name - createdOn - createdBy - modifiedOn - modifiedBy properties: id: type: string format: dictionaryId name: type: string description: Name of the statistical field example: - whose_case - what_scope - inaction_scope - decision_scope - time_of_info_provide - proceddings_interrupted - status value: type: array description: Acceptable values items: type: object required: - id - name properties: id: type: string format: objectId name: type: string maxItems: description: Maximum number of selected values type: number default: 1 minItems: description: Minimum number of selected values type: number default: 1 active: description: Allows to add to new entries type: boolean default: true createdOn: *metaCreatedOn createdBy: *metaCreatedBy modifiedOn: *metaModifiedOn modifiedBy: *metaModifiedBy Case: type: object required: - id - name - createdOn - createdBy - modifiedOn - modifiedBy properties: id: type: number format: caseId readOnly: true name: type: string description: Name of case comment: type: string description: Comment available for team tag: type: array description: List of tag which apply to case items: type: string auditedInstitution: type: array description: List of audited institution items: type: object properties: id: type: string format: objectId user: type: number format: institutionId responsibleUser: type: array description: List of users responsible for the case items: $ref: "#/components/schemas/UserRef" notifiedUser: type: array description: List of users which receive notifications items: $ref: "#/components/schemas/UserRef" features: type: array description: List of features from dictionaries items: type: string letterCount: type: number description: Count of letter in case readOnly: true noteCount: type: number description: Count of note in case readOnly: true eventCount: type: number description: Count of event in case readOnly: true createdOn: *metaCreatedOn createdBy: *metaCreatedBy modifiedOn: *metaModifiedOn modifiedBy: *metaModifiedBy Institution: type: object required: - id - name - createdOn - createdBy - modifiedOn - modifiedBy properties: id: type: string readOnly: true name: type: string description: Name of institution external_identifier: type: object description: Known external identifier of the institution properties: regon: type: string nip: type: string address: description: Known address of the institution $ref: "#/components/schemas/AddressData" administrativeUnit: type: string format: administrativeUnitId createdOn: *metaCreatedOn createdBy: *metaCreatedBy modifiedOn: *metaModifiedOn modifiedBy: *metaModifiedBy TagNamespace: type: object required: - id - description - createdOn - createdBy - modifiedOn - modifiedBy properties: id: type: string format: labelId readOnly: true description: type: string color: type: string format: rgb pattern: "^[a-f0-9]{9}$" createdOn: *metaCreatedOn createdBy: *metaCreatedBy modifiedOn: *metaModifiedOn modifiedBy: *metaModifiedBy Collection: type: object required: - id - name - query - createdOn - createdBy - modifiedOn - modifiedBy properties: id: type: string format: collectionId readOnly: true name: type: string content: type: array items: type: string enum: - note - comment - letter - event public: type: boolean expiredOn: type: string format: date-time query: type: string description: Search query createdOn: *metaCreatedOn createdBy: *metaCreatedBy modifiedOn: *metaModifiedOn modifiedBy: *metaModifiedBy Letter: type: object required: - id - name - direction - channel - createdOn - createdBy - modifiedOn - modifiedBy properties: id: type: string format: letterId readOnly: true name: type: string direction: type: string description: Direction enum: - received - send channel: type: string format: channelId description: Channel final: type: boolean description: The status of the letter, e.g. deciding about visibility in the collection data: type: string format: date-time description: Date of receipt / Date of dispatch identifier: type: string description: External identifier of letter / case description: type: number description: Description ID choose by content creator institution: type: array items: type: number format: institutionId description: Institution address: $ref: "#/components/schemas/AddressData" case: type: string format: caseId attachment: type: array minItems: 0 items: $ref: "#/components/schemas/File" ordering: type: number default: 0 comment: type: string excerpt: type: string tags: type: array items: type: string createdOn: *metaCreatedOn createdBy: *metaCreatedBy modifiedOn: *metaModifiedOn modifiedBy: *metaModifiedBy File: type: object required: - id - path - name properties: id: type: string format: fileId readOnly: true path: type: string name: type: string FileSigner: type: object required: - name properties: name: type: string method: type: string readOnly: true enum: - POST - PUT url: type: string readOnly: true description: "Path to send file. See details: https://docs.aws.amazon.com/AmazonS3/latest/dev/PresignedUrlUploadObject.html" path: type: string readOnly: true AddressData: type: object properties: email: type: string format: email epuap: type: string format: epuapId street: type: string postal_code: type: string city: type: string voivodeship: type: string house_no: type: string flat_no: type: string UserRef: type: object required: - id - user properties: id: type: string format: objectId readOnly: true user: type: number format: userId Channel: type: object required: - id - name properties: id: type: string format: channelId readOnly: true name: type: string enum: - fedrowanie - faks - od klienta - mecenas zewn. - dostarczenie osobiście - email - poczta tradycyjna - epuap required: type: array description: Required address fields items: type: string enum: - email - epuap - street - postal_code - city - voivodeship - house_no - flat_no createdOn: *metaCreatedOn createdBy: *metaCreatedBy modifiedOn: *metaModifiedOn modifiedBy: *metaModifiedBy Error: type: object required: - code - message properties: code: type: integer format: int32 message: type: string Note: type: object required: - id - comment - createdOn - createdBy - modifiedOn - modifiedBy properties: id: type: string format: noteId readOnly: true case: type: string format: caseId comment: type: string createdOn: *metaCreatedOn createdBy: *metaCreatedBy modifiedOn: *metaModifiedOn modifiedBy: *metaModifiedBy Event: type: object required: - id - data - name - createdOn - createdBy - modifiedOn - modifiedBy properties: id: type: string format: noteId readOnly: true case: type: string format: caseId name: type: string data: type: string format: date-time comment: type: string createdOn: *metaCreatedOn createdBy: *metaCreatedBy modifiedOn: *metaModifiedOn modifiedBy: *metaModifiedBy User: type: object required: - id - first_name - second_name - email - permission properties: id: type: string format: userId readOnly: true first_name: type: string second_name: type: string email: type: string format: email password: type: string writeOnly: true permission: type: array minItems: 0 items: type: string Session: type: object required: - id - secret properties: id: type: string format: sessionId readOnly: true user: type: string format: userId userAgent: type: string createdOn: type: string format: date-time validUntil: type: string format: date-time secret: type: string writeOnly: true description: Available via cookie on create Description: type: object required: - id - text - createdOn - createdBy - modifiedOn - modifiedBy properties: id: type: string format: sessionId readOnly: true text: type: string format: name maxLength: 200 userAgent: type: string createdOn: *metaCreatedOn createdBy: *metaCreatedBy modifiedOn: *metaModifiedOn modifiedBy: *metaModifiedBy AdministrativeUnit: type: object required: - id - name - level - category - terc properties: id: type: string format: AdministrativeUnitId name: type: string level: type: number category: type: string terc: type: string