diff --git a/openapi/v2023.8.2/bundled.yaml b/openapi/v2023.8.2/bundled.yaml index 4a16d19..be56cf7 100644 --- a/openapi/v2023.8.2/bundled.yaml +++ b/openapi/v2023.8.2/bundled.yaml @@ -963,12 +963,7 @@ paths: description: LIST - Returns all the revisions for the data agreement operationId: configListAgreementRevisions parameters: - - description: Unique ID of an object - in: path - name: dataAgreementId - required: true - schema: - type: string + - $ref: '#/paths/~1audit~1data-agreement~1%7BdataAgreementId%7D/get/parameters/0' - $ref: '#/paths/~1config~1policies/get/parameters/1' - $ref: '#/paths/~1config~1policies/get/parameters/2' responses: @@ -1003,7 +998,7 @@ paths: description: READ - Read all data attributes for the data agreement operationId: configListDataAttribute parameters: - - $ref: '#/paths/~1config~1data-agreement~1%7BdataAgreementId%7D~1revisions/get/parameters/0' + - $ref: '#/paths/~1audit~1data-agreement~1%7BdataAgreementId%7D/get/parameters/0' - $ref: '#/paths/~1config~1policies/get/parameters/1' - $ref: '#/paths/~1config~1policies/get/parameters/2' responses: @@ -3283,7 +3278,7 @@ paths: description: READ - Fetch all latest versions of data attribute associated with an DataAgreement and the presented revisionId of that DataAgreement operationId: serviceAgreementDataRead parameters: - - $ref: '#/paths/~1config~1data-agreement~1%7BdataAgreementId%7D~1revisions/get/parameters/0' + - $ref: '#/paths/~1audit~1data-agreement~1%7BdataAgreementId%7D/get/parameters/0' - $ref: '#/paths/~1config~1policies/get/parameters/1' - $ref: '#/paths/~1config~1policies/get/parameters/2' - $ref: '#/paths/~1config~1data-agreements/get/parameters/0' @@ -3364,7 +3359,7 @@ paths: dataAgreementRecords: type: array items: - $ref: '#/paths/~1audit~1data-agreement-record~1%7BdataAgreementRecordId%7D/get/responses/200/content/application~1json/schema' + $ref: '#/paths/~1service~1individual~1record~1data-agreement-record/post/responses/200/content/application~1json/schema/properties/dataAgreementRecord' pagination: $ref: '#/components/schemas/Pagination' description: '' @@ -3384,7 +3379,7 @@ paths: description: READ - Fetch a data agreement record (latest revision). The individualId is supplied as HTTP header. operationId: serviceVerificationAgreementConsentRecordRead parameters: - - $ref: '#/paths/~1config~1data-agreement~1%7BdataAgreementId%7D~1revisions/get/parameters/0' + - $ref: '#/paths/~1audit~1data-agreement~1%7BdataAgreementId%7D/get/parameters/0' responses: '200': content: @@ -3393,7 +3388,7 @@ paths: type: object properties: dataAgreementRecord: - $ref: '#/paths/~1audit~1data-agreement-record~1%7BdataAgreementRecordId%7D/get/responses/200/content/application~1json/schema' + $ref: '#/paths/~1service~1individual~1record~1data-agreement-record/post/responses/200/content/application~1json/schema/properties/dataAgreementRecord' revision: $ref: '#/components/schemas/Revision' description: '' @@ -3425,7 +3420,7 @@ paths: dataAgreementRecords: type: array items: - $ref: '#/paths/~1audit~1data-agreement-record~1%7BdataAgreementRecordId%7D/get/responses/200/content/application~1json/schema' + $ref: '#/paths/~1service~1individual~1record~1data-agreement-record/post/responses/200/content/application~1json/schema/properties/dataAgreementRecord' pagination: $ref: '#/components/schemas/Pagination' description: '' @@ -3445,7 +3440,7 @@ paths: description: 'CREATE - For a particular individual and a particular data agreement, create a new data agreement record pointing to the current revision of a given data agreement.' operationId: serviceCreateIndividualConsentRecord parameters: - - $ref: '#/paths/~1config~1data-agreement~1%7BdataAgreementId%7D~1revisions/get/parameters/0' + - $ref: '#/paths/~1audit~1data-agreement~1%7BdataAgreementId%7D/get/parameters/0' - description: Unique ID of an object in: path name: individualId @@ -3461,7 +3456,7 @@ paths: type: object properties: dataAgreementRecord: - $ref: '#/paths/~1audit~1data-agreement-record~1%7BdataAgreementRecordId%7D/get/responses/200/content/application~1json/schema' + $ref: '#/paths/~1service~1individual~1record~1data-agreement-record/post/responses/200/content/application~1json/schema/properties/dataAgreementRecord' revision: $ref: '#/components/schemas/Revision' description: '' @@ -3480,7 +3475,7 @@ paths: description: READ - Read data agreement record. There should be one unambiguous DataAgreementRecord for an Individual and an DataAgreement. operationId: serviceReadIndividualRecordRead parameters: - - $ref: '#/paths/~1config~1data-agreement~1%7BdataAgreementId%7D~1revisions/get/parameters/0' + - $ref: '#/paths/~1audit~1data-agreement~1%7BdataAgreementId%7D/get/parameters/0' responses: '200': content: @@ -3489,7 +3484,7 @@ paths: type: object properties: dataAgreementRecord: - $ref: '#/paths/~1audit~1data-agreement-record~1%7BdataAgreementRecordId%7D/get/responses/200/content/application~1json/schema' + $ref: '#/paths/~1service~1individual~1record~1data-agreement-record/post/responses/200/content/application~1json/schema/properties/dataAgreementRecord' description: '' '400': description: bad input parameter @@ -3533,7 +3528,7 @@ paths: type: object properties: dataAgreementRecord: - $ref: '#/paths/~1audit~1data-agreement-record~1%7BdataAgreementRecordId%7D/get/responses/200/content/application~1json/schema' + $ref: '#/paths/~1service~1individual~1record~1data-agreement-record/post/responses/200/content/application~1json/schema/properties/dataAgreementRecord' signature: $ref: '#/components/schemas/Signature' description: '' @@ -3559,7 +3554,7 @@ paths: schema: properties: dataAgreementRecord: - $ref: '#/paths/~1audit~1data-agreement-record~1%7BdataAgreementRecordId%7D/get/responses/200/content/application~1json/schema' + $ref: '#/paths/~1service~1individual~1record~1data-agreement-record/post/responses/200/content/application~1json/schema/properties/dataAgreementRecord' description: An object of type DataAgreementRecord signature: $ref: '#/components/schemas/Signature' @@ -3576,7 +3571,72 @@ paths: type: object properties: dataAgreementRecord: - $ref: '#/paths/~1audit~1data-agreement-record~1%7BdataAgreementRecordId%7D/get/responses/200/content/application~1json/schema' + type: object + title: DataAgreementRecord + description: 'A data agreement record expresses consent (as defined in this building block''s specification) to a single DataAgreement. There must be a UNIQUE constraint on (data agreement revision, individual)' + x-not-in-database: false + required: + - id + - agreementRevisionHash + - state + properties: + id: + type: string + format: '' + example: '' + description: 'Objects may be passed back by some API endpoints without an id (PK), denoting that they are a "draft", i.e. a ConsentRecord that is not yet stored in the database and only exist in transit. Draft ConsentRecords do not have a Revision, but if paired up with a Signature, a valid Revision should be generated.' + dataAgreementId: + type: string + x-fk-model: DataAgreement + description: The DataAgreement to which consent has been given + dataAgreementRevisionId: + type: string + x-fk-model: Revision + description: The Revision of the data agreement which consent has been given to + dataAgreementRevisionHash: + type: string + format: '' + example: '' + description: Copy of the revision hash. The hash is the included in the signature and ensures against tampering with the original agreement. + dataAttributes: + type: array + items: + type: object + title: DataAttributeIntegrity + properties: + dataAttributeId: + type: string + description: Data attribute id + dataAttributeRevisionId: + type: string + x-fk-model: Revision + description: The Revision of the data attribute which consent has been given to + dataAttributeRevisionHash: + type: string + format: '' + example: '' + description: Copy of the revision hash. The hash is the included in the signature and ensures against tampering with the original data attribute. + individualId: + type: string + x-fk-model: Individual + description: The Individual who has signed this data agreement record + optIn: + type: boolean + format: '' + example: '' + description: 'True: The individual has positively opted in. False: The individual has explicitly said no (or withdrawn a previous consent).' + state: + type: string + format: '' + example: '' + description: 'The state field is used to record state changes after-the-fact. It is maintained by the Consent BB itself. Valid states: unsigned/pending more signatures/signed' + enum: + - unsigned + - signed + signatureId: + type: string + x-fk-model: Signature + description: 'A signature that hashes all the values of the data agreement record and has signed it with the key of the Invidiual, making it verifiable and tamper-proof. TBD: Relation to a Signature schema?' revision: $ref: '#/components/schemas/Revision' signature: @@ -3626,7 +3686,7 @@ paths: properties: dataAgreementRecords: items: - $ref: '#/paths/~1audit~1data-agreement-record~1%7BdataAgreementRecordId%7D/get/responses/200/content/application~1json/schema' + $ref: '#/paths/~1service~1individual~1record~1data-agreement-record/post/responses/200/content/application~1json/schema/properties/dataAgreementRecord' type: array pagination: $ref: '#/components/schemas/Pagination' @@ -3647,12 +3707,7 @@ paths: description: UPDATE* - Update a data agreement record. Note that updating a signed data agreement record invalidates its signature. operationId: serviceUpdateIndividualConsentRecord parameters: - - description: Unique ID of an object - in: path - name: dataAgreementRecordId - required: true - schema: - type: string + - $ref: '#/paths/~1audit~1data-agreement-record~1%7BdataAgreementRecordId%7D/get/parameters/0' - description: An object with id individualId in: query name: individualId @@ -3690,7 +3745,7 @@ paths: type: object properties: dataAgreementRecord: - $ref: '#/paths/~1audit~1data-agreement-record~1%7BdataAgreementRecordId%7D/get/responses/200/content/application~1json/schema' + $ref: '#/paths/~1service~1individual~1record~1data-agreement-record/post/responses/200/content/application~1json/schema/properties/dataAgreementRecord' revision: $ref: '#/components/schemas/Revision' description: '' @@ -3784,7 +3839,7 @@ paths: description: LIST - Fetch data agreement records given to a data agreement. operationId: serviceListIndividualAgreementConsentRecordList parameters: - - $ref: '#/paths/~1config~1data-agreement~1%7BdataAgreementId%7D~1revisions/get/parameters/0' + - $ref: '#/paths/~1audit~1data-agreement~1%7BdataAgreementId%7D/get/parameters/0' - $ref: '#/paths/~1config~1policies/get/parameters/1' - $ref: '#/paths/~1config~1policies/get/parameters/2' responses: @@ -3796,7 +3851,7 @@ paths: properties: dataAgreementRecords: items: - $ref: '#/paths/~1audit~1data-agreement-record~1%7BdataAgreementRecordId%7D/get/responses/200/content/application~1json/schema' + $ref: '#/paths/~1service~1individual~1record~1data-agreement-record/post/responses/200/content/application~1json/schema/properties/dataAgreementRecord' type: array pagination: $ref: '#/components/schemas/Pagination' @@ -3812,6 +3867,59 @@ paths: x-specification-pii-or-sensitive: 'True' x-specification-scenario: '' x-specification-usecase: UC-C-PIC-I-001 + /service/individual/record/data-agreement-record/history': + get: + operationId: serviceListDataAgreementRecordHistory + tags: + - service + description: LIST - Fetch all data agreement record history + summary: LIST - Fetch all data agreement record history + parameters: + - $ref: '#/paths/~1config~1policies/get/parameters/1' + - $ref: '#/paths/~1config~1policies/get/parameters/2' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + dataAgreementRecordHistory: + required: + - id + - organisationId + - dataAgreementId + - log + - timestamp + type: object + properties: + id: + type: string + description: Data agreement record history Id + organisationId: + type: string + description: Organisation Id + dataAgreementId: + type: string + description: Data agreement Id + log: + type: string + description: Log string + timestamp: + type: string + description: Timestamp in ISO 8601 date time format + example: + id: 64e91591e2f6a8000142c665 + organisationId: 603e683c69dd720001c74f93 + dataAgreementId: 61e183127c81650001f97d43 + log: Updated consent value to for the purpose in organization + timestamp: '2023-08-25T20:56:49Z' + pagination: + $ref: '#/components/schemas/Pagination' + deprecated: false + security: + - BearerAuth: [] /audit/admin/logs: get: operationId: auditAdminLogs @@ -3865,6 +3973,66 @@ paths: type: array pagination: $ref: '#/components/schemas/Pagination' + /audit/data-agreement-records: + get: + description: LIST - Fetch all data agreement records + operationId: auditDataAgreementRecordsList + parameters: + - $ref: '#/paths/~1config~1policies/get/parameters/1' + - $ref: '#/paths/~1config~1policies/get/parameters/2' + - description: Unique ID of an object + in: query + name: lawfulBasis + schema: + type: string + description: Lawful basis of the agreement - consent / legal_obligation / contract / vital_interest / public_task / legitimate_interest + enum: + - consent + - legal_obligation + - contract + - vital_interest + - public_task + - legitimate_interest + - description: Unique ID of an object + in: query + name: individualId + schema: + type: string + - description: Unique ID of an object + in: query + name: dataAgreementId + schema: + type: string + - description: Unique ID of an object + in: query + name: dataAgreementRecordId + schema: + type: string + responses: + '200': + content: + application/json: + schema: + type: object + properties: + dataAgreementRecords: + items: + $ref: '#/paths/~1service~1individual~1record~1data-agreement-record/post/responses/200/content/application~1json/schema/properties/dataAgreementRecord' + type: array + pagination: + $ref: '#/components/schemas/Pagination' + description: '' + '400': + description: bad input parameter + security: + - BearerAuth: [] + summary: LIST - Fetch all data agreement records + tags: + - audit + x-specification-crudl-model: '' + x-specification-pii-or-sensitive: 'False' + x-specification-scenario: '' + x-specification-usecase: UC-C-PIC-AT-003 '/audit/data-agreement-record/{dataAgreementRecordId}': get: description: READ - Fetch a single data agreement record @@ -3882,71 +4050,9 @@ paths: application/json: schema: type: object - title: DataAgreementRecord - description: 'A data agreement record expresses consent (as defined in this building block''s specification) to a single DataAgreement. There must be a UNIQUE constraint on (data agreement revision, individual)' - x-not-in-database: false - required: - - id - - agreementRevisionHash - - state properties: - id: - type: string - format: '' - example: '' - description: 'Objects may be passed back by some API endpoints without an id (PK), denoting that they are a "draft", i.e. a ConsentRecord that is not yet stored in the database and only exist in transit. Draft ConsentRecords do not have a Revision, but if paired up with a Signature, a valid Revision should be generated.' - dataAgreementId: - type: string - x-fk-model: DataAgreement - description: The DataAgreement to which consent has been given - dataAgreementRevisionId: - type: string - x-fk-model: Revision - description: The Revision of the data agreement which consent has been given to - dataAgreementRevisionHash: - type: string - format: '' - example: '' - description: Copy of the revision hash. The hash is the included in the signature and ensures against tampering with the original agreement. - dataAttributes: - type: array - items: - type: object - title: DataAttributeIntegrity - properties: - dataAttributeId: - type: string - description: Data attribute id - dataAttributeRevisionId: - type: string - x-fk-model: Revision - description: The Revision of the data attribute which consent has been given to - dataAttributeRevisionHash: - type: string - format: '' - example: '' - description: Copy of the revision hash. The hash is the included in the signature and ensures against tampering with the original data attribute. - individualId: - type: string - x-fk-model: Individual - description: The Individual who has signed this data agreement record - optIn: - type: boolean - format: '' - example: '' - description: 'True: The individual has positively opted in. False: The individual has explicitly said no (or withdrawn a previous consent).' - state: - type: string - format: '' - example: '' - description: 'The state field is used to record state changes after-the-fact. It is maintained by the Consent BB itself. Valid states: unsigned/pending more signatures/signed' - enum: - - unsigned - - signed - signatureId: - type: string - x-fk-model: Signature - description: 'A signature that hashes all the values of the data agreement record and has signed it with the key of the Invidiual, making it verifiable and tamper-proof. TBD: Relation to a Signature schema?' + dataAgreementRecord: + $ref: '#/paths/~1service~1individual~1record~1data-agreement-record/post/responses/200/content/application~1json/schema/properties/dataAgreementRecord' description: '' '400': description: bad input parameter @@ -3959,6 +4065,38 @@ paths: x-specification-pii-or-sensitive: 'False' x-specification-scenario: '' x-specification-usecase: '' + /audit/data-agreements: + get: + description: LIST - Fetch all data agreements stored in the system + operationId: auditDataAgreementList + parameters: + - $ref: '#/paths/~1config~1policies/get/parameters/1' + - $ref: '#/paths/~1config~1policies/get/parameters/2' + responses: + '200': + content: + application/json: + schema: + type: object + properties: + dataAgreements: + items: + $ref: '#/components/schemas/DataAgreement' + type: array + pagination: + $ref: '#/components/schemas/Pagination' + description: '' + '400': + description: bad input parameter + security: + - BearerAuth: [] + summary: LIST - Fetch all data agreements stored in the system + tags: + - audit + x-specification-crudl-model: '' + x-specification-pii-or-sensitive: 'False' + x-specification-scenario: '' + x-specification-usecase: 'UC-C-PIC-AT-001, UC-C-PIC-AT-003' '/audit/data-agreement/{dataAgreementId}': get: description: READ - Fetch a single data agreement. @@ -3975,7 +4113,10 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/DataAgreement' + type: object + properties: + dataAgreement: + $ref: '#/components/schemas/DataAgreement' description: '' '400': description: bad input parameter diff --git a/openapi/v2023.8.2/definitions/DataAgreementRecordHistory.yaml b/openapi/v2023.8.2/definitions/DataAgreementRecordHistory.yaml new file mode 100644 index 0000000..7dcd774 --- /dev/null +++ b/openapi/v2023.8.2/definitions/DataAgreementRecordHistory.yaml @@ -0,0 +1,29 @@ +required: + - id + - organisationId + - dataAgreementId + - log + - timestamp +type: object +properties: + id: + type: string + description: Data agreement record history Id + organisationId: + type: string + description: Organisation Id + dataAgreementId: + type: string + description: Data agreement Id + log: + type: string + description: Log string + timestamp: + type: string + description: Timestamp in ISO 8601 date time format +example: + id: 64e91591e2f6a8000142c665 + organisationId: 603e683c69dd720001c74f93 + dataAgreementId: 61e183127c81650001f97d43 + log: Updated consent value to for the purpose in organization + timestamp: '2023-08-25T20:56:49Z' \ No newline at end of file diff --git a/openapi/v2023.8.2/index.yaml b/openapi/v2023.8.2/index.yaml index 056b238..3184da5 100644 --- a/openapi/v2023.8.2/index.yaml +++ b/openapi/v2023.8.2/index.yaml @@ -268,7 +268,7 @@ paths: $ref: ./paths/serviceCreateIndividualConsentRecord.yaml get: $ref: ./paths/serviceReadIndividualRecordRead.yaml - + /service/individual/record/data-agreement-record/draft: post: $ref: ./paths/serviceCreateIndividualConsentRecordDraft.yaml @@ -284,27 +284,34 @@ paths: /service/individual/record/data-agreement-record/{dataAgreementRecordId}: put: $ref: ./paths/serviceUpdateIndividualConsentRecord.yaml - + /service/individual/record/data-agreement-record/{dataAgreementRecordId}/signature: post: $ref: ./paths/serviceCreateIndividualConsentRecordSignature.yaml put: $ref: ./paths/serviceUpdateIndividualConsentRecordSignature.yaml - + /service/individual/record/data-agreement/{dataAgreementId}/all: get: $ref: ./paths/serviceListIndividualAgreementConsentRecordList.yaml - - + /service/individual/record/data-agreement-record/history': + get: + $ref: "./paths/serviceListDataAgreementRecordHistory.yaml" /audit/admin/logs: get: $ref: ./paths/auditAdminLogs.yaml + /audit/data-agreement-records: + get: + $ref: "./paths/auditDataAgreementRecordsList.yaml" /audit/data-agreement-record/{dataAgreementRecordId}: get: - $ref: ./paths/auditConsentRecordRead.yaml + $ref: ./paths/auditDataAgreementRecordRead.yaml + /audit/data-agreements: + get: + $ref: "./paths/auditDataAgreementList.yaml" /audit/data-agreement/{dataAgreementId}: get: - $ref: ./paths/auditReadRecord.yaml + $ref: ./paths/auditReadDataAgreement.yaml servers: - description: Development server url: https://api.bb-consent.dev/v2 diff --git a/openapi/v2023.8.2/parameters/dataAgreementIdQueryParam.yaml b/openapi/v2023.8.2/parameters/dataAgreementIdQueryParam.yaml new file mode 100644 index 0000000..327e4bb --- /dev/null +++ b/openapi/v2023.8.2/parameters/dataAgreementIdQueryParam.yaml @@ -0,0 +1,5 @@ +description: Unique ID of an object +in: query +name: dataAgreementId +schema: + type: string \ No newline at end of file diff --git a/openapi/v2023.8.2/parameters/dataAgreementRecordIdQueryParam.yaml b/openapi/v2023.8.2/parameters/dataAgreementRecordIdQueryParam.yaml new file mode 100644 index 0000000..635f5fc --- /dev/null +++ b/openapi/v2023.8.2/parameters/dataAgreementRecordIdQueryParam.yaml @@ -0,0 +1,5 @@ +description: Unique ID of an object +in: query +name: dataAgreementRecordId +schema: + type: string \ No newline at end of file diff --git a/openapi/v2023.8.2/parameters/individualIdQueryParam.yaml b/openapi/v2023.8.2/parameters/individualIdQueryParam.yaml new file mode 100644 index 0000000..348733f --- /dev/null +++ b/openapi/v2023.8.2/parameters/individualIdQueryParam.yaml @@ -0,0 +1,5 @@ +description: Unique ID of an object +in: query +name: individualId +schema: + type: string \ No newline at end of file diff --git a/openapi/v2023.8.2/parameters/lawfulBasisQueryParam.yaml b/openapi/v2023.8.2/parameters/lawfulBasisQueryParam.yaml new file mode 100644 index 0000000..8326942 --- /dev/null +++ b/openapi/v2023.8.2/parameters/lawfulBasisQueryParam.yaml @@ -0,0 +1,13 @@ +description: Unique ID of an object +in: query +name: lawfulBasis +schema: + type: string + description: "Lawful basis of the agreement - consent / legal_obligation / contract / vital_interest / public_task / legitimate_interest" + enum: + - consent + - legal_obligation + - contract + - vital_interest + - public_task + - legitimate_interest \ No newline at end of file diff --git a/openapi/v2023.8.2/paths/auditAgreementList.yaml b/openapi/v2023.8.2/paths/auditAgreementList.yaml deleted file mode 100644 index 017f892..0000000 --- a/openapi/v2023.8.2/paths/auditAgreementList.yaml +++ /dev/null @@ -1,51 +0,0 @@ -description: LIST - Fetch all data agreements stored in the system -operationId: auditAgreementList -parameters: - - description: - Requested index for start of resources to be provided in response requested - by client - in: query - name: offset - required: false - schema: - type: integer - - description: - Requested number of resources to be provided in response requested - by client - in: query - name: limit - required: false - schema: - type: integer -requestBody: - content: - application/json: - schema: - properties: - agreementFilter: - $ref: ../definitions/AgreementFilter.yaml - description: An object of type AgreementFilter - required: - - agreementFilter - type: object -responses: - "200": - content: - application/json: - schema: - items: - oneOf: - - $ref: ../definitions/DataAgreement.yaml - type: array - description: "" - "400": - description: bad input parameter -security: - - BearerAuth: [] -summary: LIST - Fetch all data agreements stored in the system -tags: - - audit -x-specification-crudl-model: "" -x-specification-pii-or-sensitive: "False" -x-specification-scenario: "" -x-specification-usecase: UC-C-PIC-AT-001, UC-C-PIC-AT-003 diff --git a/openapi/v2023.8.2/paths/auditConsentRecordList.yaml b/openapi/v2023.8.2/paths/auditConsentRecordList.yaml deleted file mode 100644 index 0258f2f..0000000 --- a/openapi/v2023.8.2/paths/auditConsentRecordList.yaml +++ /dev/null @@ -1,49 +0,0 @@ -description: LIST - Fetch all consent records -operationId: auditConsentRecordList -parameters: -- description: Requested index for start of resources to be provided in response requested - by client - in: query - name: offset - required: false - schema: - type: integer -- description: Requested number of resources to be provided in response requested - by client - in: query - name: limit - required: false - schema: - type: integer -requestBody: - content: - application/json: - schema: - properties: - consentRecordFilter: - $ref: ../definitions/ConsentRecordFilter.yaml - description: An object of type ConsentRecordFilter - required: - - consentRecordFilter - type: object -responses: - '200': - content: - application/json: - schema: - items: - oneOf: - - $ref: ../definitions/ConsentRecord.yaml - type: array - description: '' - '400': - description: bad input parameter -security: - - BearerAuth: [] -summary: LIST - Fetch all consent records -tags: -- audit -x-specification-crudl-model: '' -x-specification-pii-or-sensitive: 'False' -x-specification-scenario: '' -x-specification-usecase: UC-C-PIC-AT-003 diff --git a/openapi/v2023.8.2/paths/auditDataAgreementList.yaml b/openapi/v2023.8.2/paths/auditDataAgreementList.yaml new file mode 100644 index 0000000..529a376 --- /dev/null +++ b/openapi/v2023.8.2/paths/auditDataAgreementList.yaml @@ -0,0 +1,30 @@ +description: LIST - Fetch all data agreements stored in the system +operationId: auditDataAgreementList +parameters: + - $ref: "../parameters/offset.yaml" + - $ref: "../parameters/limit.yaml" +responses: + "200": + content: + application/json: + schema: + type: object + properties: + dataAgreements: + items: + $ref: ../definitions/DataAgreement.yaml + type: array + pagination: + $ref: "../definitions/Pagination.yaml" + description: "" + "400": + description: bad input parameter +security: + - BearerAuth: [] +summary: LIST - Fetch all data agreements stored in the system +tags: + - audit +x-specification-crudl-model: "" +x-specification-pii-or-sensitive: "False" +x-specification-scenario: "" +x-specification-usecase: UC-C-PIC-AT-001, UC-C-PIC-AT-003 diff --git a/openapi/v2023.8.2/paths/auditConsentRecordRead.yaml b/openapi/v2023.8.2/paths/auditDataAgreementRecordRead.yaml similarity index 71% rename from openapi/v2023.8.2/paths/auditConsentRecordRead.yaml rename to openapi/v2023.8.2/paths/auditDataAgreementRecordRead.yaml index ef45b23..b7d96c8 100644 --- a/openapi/v2023.8.2/paths/auditConsentRecordRead.yaml +++ b/openapi/v2023.8.2/paths/auditDataAgreementRecordRead.yaml @@ -1,18 +1,16 @@ description: READ - Fetch a single data agreement record operationId: auditConsentRecordRead parameters: - - description: Unique ID of an object - in: path - name: dataAgreementRecordId - required: true - schema: - type: string + - $ref: "../parameters/dataAgreementRecordId.yaml" responses: "200": content: application/json: schema: - $ref: ../definitions/DataAgreementRecord.yaml + type: object + properties: + dataAgreementRecord: + $ref: ../definitions/DataAgreementRecord.yaml description: "" "400": description: bad input parameter diff --git a/openapi/v2023.8.2/paths/auditDataAgreementRecordsList.yaml b/openapi/v2023.8.2/paths/auditDataAgreementRecordsList.yaml new file mode 100644 index 0000000..fdc8b0f --- /dev/null +++ b/openapi/v2023.8.2/paths/auditDataAgreementRecordsList.yaml @@ -0,0 +1,34 @@ +description: LIST - Fetch all data agreement records +operationId: auditDataAgreementRecordsList +parameters: + - $ref: "../parameters/offset.yaml" + - $ref: "../parameters/limit.yaml" + - $ref: "../parameters/lawfulBasisQueryParam.yaml" + - $ref: "../parameters/individualIdQueryParam.yaml" + - $ref: "../parameters/dataAgreementIdQueryParam.yaml" + - $ref: "../parameters/dataAgreementRecordIdQueryParam.yaml" +responses: + "200": + content: + application/json: + schema: + type: object + properties: + dataAgreementRecords: + items: + $ref: ../definitions/DataAgreementRecord.yaml + type: array + pagination: + $ref: "../definitions/Pagination.yaml" + description: "" + "400": + description: bad input parameter +security: + - BearerAuth: [] +summary: LIST - Fetch all data agreement records +tags: + - audit +x-specification-crudl-model: "" +x-specification-pii-or-sensitive: "False" +x-specification-scenario: "" +x-specification-usecase: UC-C-PIC-AT-003 diff --git a/openapi/v2023.8.2/paths/auditReadRecord.yaml b/openapi/v2023.8.2/paths/auditReadDataAgreement.yaml similarity index 50% rename from openapi/v2023.8.2/paths/auditReadRecord.yaml rename to openapi/v2023.8.2/paths/auditReadDataAgreement.yaml index 440daf3..9fddba2 100644 --- a/openapi/v2023.8.2/paths/auditReadRecord.yaml +++ b/openapi/v2023.8.2/paths/auditReadDataAgreement.yaml @@ -1,27 +1,25 @@ description: READ - Fetch a single data agreement. operationId: auditReadRecord parameters: -- description: Unique ID of an object - in: path - name: dataAgreementId - required: true - schema: - type: string + - $ref: "../parameters/dataAgreementId.yaml" responses: - '200': + "200": content: application/json: schema: - $ref: ../definitions/DataAgreement.yaml - description: '' - '400': + type: object + properties: + dataAgreement: + $ref: ../definitions/DataAgreement.yaml + description: "" + "400": description: bad input parameter security: - BearerAuth: [] summary: READ - Fetch a single data agreement. tags: -- audit -x-specification-crudl-model: '' -x-specification-pii-or-sensitive: 'False' -x-specification-scenario: '' + - audit +x-specification-crudl-model: "" +x-specification-pii-or-sensitive: "False" +x-specification-scenario: "" x-specification-usecase: UC-C-PIC-AT-001, UC-C-PIC-AT-003 diff --git a/openapi/v2023.8.2/paths/serviceListDataAgreementRecordHistory.yaml b/openapi/v2023.8.2/paths/serviceListDataAgreementRecordHistory.yaml new file mode 100644 index 0000000..954fea5 --- /dev/null +++ b/openapi/v2023.8.2/paths/serviceListDataAgreementRecordHistory.yaml @@ -0,0 +1,23 @@ +operationId: serviceListDataAgreementRecordHistory +tags: + - service +description: LIST - Fetch all data agreement record history +summary: LIST - Fetch all data agreement record history +parameters: + - $ref: "../parameters/offset.yaml" + - $ref: "../parameters/limit.yaml" +responses: + "200": + description: OK + content: + application/json: + schema: + type: object + properties: + dataAgreementRecordHistory: + $ref: "../definitions/DataAgreementRecordHistory.yaml" + pagination: + $ref: "../definitions/Pagination.yaml" +deprecated: false +security: + - BearerAuth: []