---
id: config-update-agreement
title: "Update data agreement"
description: "This endpoint allows the admin to update the latest data agreement defined earlier in an organisation. It also returns the updated revision number."
sidebar_label: "Update data agreement"
hide_title: true
hide_table_of_contents: true
api: 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
sidebar_class_name: "put api-method"
info_path: docs/consent-management-admin-api/igrant-io-api-documentation
custom_edit_url: null
---

> **Build this with an AI coding agent.** Install the iGrant.io Agent Skills, then ask your agent to build the integration:
>
> ```bash
> npx skills add L3-iGrant/skills
> ```


import ApiTabs from "@theme/ApiTabs";
import DiscriminatorTabs from "@theme/DiscriminatorTabs";
import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint";
import SecuritySchemes from "@theme/ApiExplorer/SecuritySchemes";
import MimeTabs from "@theme/MimeTabs";
import ParamsItem from "@theme/ParamsItem";
import ResponseSamples from "@theme/ResponseSamples";
import SchemaItem from "@theme/SchemaItem";
import SchemaTabs from "@theme/SchemaTabs";
import Markdown from "@theme/Markdown";
import OperationTabs from "@theme/OperationTabs";
import TabItem from "@theme/TabItem";

<h1 className={"openapi__heading"}>Update data agreement</h1>

<MethodEndpoint method={"put"} path={"/config/data-agreement/{dataAgreementId}"}></MethodEndpoint>



This endpoint allows the admin to update the latest data agreement defined earlier in an organisation. It also returns the updated revision number.

## Request

<details style={{"marginBottom":"1rem"}} className={"openapi-markdown__details"} data-collapsed={false} open={true}><summary style={{}}><h3 className={"openapi-markdown__details-summary-header-params"}>Path Parameters</h3></summary><div><ul><ParamsItem className={"paramsItem"} param={{"description":"Unique ID of an object","in":"path","name":"dataAgreementId","required":true,"schema":{"type":"string"}}}></ParamsItem></ul></div></details><MimeTabs className={"openapi-tabs__mime"}><TabItem label={"application/json"} value={"application/json-schema"}><details style={{}} className={"openapi-markdown__details mime"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-mime"}><h3 className={"openapi-markdown__details-summary-header-body"}>Body</h3></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>dataAgreement</strong><span className={"openapi-schema__name"}> object</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

An agreement contains the specification of a single purpose that can be consented to.  A DataAgreement is universal and can be consented to by *many* individuals through a DataAgreementRecord.


</div><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>policy</strong><span className={"openapi-schema__name"}> object</span><span className={"openapi-schema__divider"}></span><span className={"openapi-schema__required"}>required</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

Policy under which this DataAgreement shall be governed.  When creating a data agreement, the latest policy can be used to fill the default value,  and organisation admin can decide to change it in the data agreement level.


</div><SchemaItem collapsible={false} name={"id"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"65471222e8c7c3bb3c2c7701","description":""}}></SchemaItem><SchemaItem collapsible={false} name={"name"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"Default data policy","description":"Name of the policy"}}></SchemaItem><SchemaItem collapsible={false} name={"version"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"1.0.0","description":"Version of the policy (it can follow the semver format)"}}></SchemaItem><SchemaItem collapsible={false} name={"url"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"https://example.com/privacy-policy","description":"Permanent URL at which this very version of the Policy can be read, should not be allowed to change over time"}}></SchemaItem><SchemaItem collapsible={false} name={"jurisdiction"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"EU","description":"Jurisdiction"}}></SchemaItem><SchemaItem collapsible={false} name={"industrySector"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"Healthcare","description":"Industry sector"}}></SchemaItem><SchemaItem collapsible={false} name={"dataRetentionPeriodDays"} required={false} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","format":"","example":365,"description":"Data retention period in days"}}></SchemaItem><SchemaItem collapsible={false} name={"geographicRestriction"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"EU","description":"Geographic restriction"}}></SchemaItem><SchemaItem collapsible={false} name={"storageLocation"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"EU","description":"Storage location"}}></SchemaItem><SchemaItem collapsible={false} name={"thirdPartyDataSharing"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","format":"","example":true,"description":"Third party data sharing"}}></SchemaItem></div></details></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>dataAttributes</strong><span className={"openapi-schema__name"}> object[]</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

Data attributes contain specifications of exactly what is collected.


</div><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem","paddingBottom":".5rem"}}>Array [</div></li><SchemaItem collapsible={false} name={"id"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"65471222e8c7c3bb3c2c8501","description":"Data attribute ID"}}></SchemaItem><SchemaItem collapsible={false} name={"name"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"Name","description":"Name of the attribute, for instance \"name\" or \"age\""}}></SchemaItem><SchemaItem collapsible={false} name={"description"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"Full name of the individual","description":"Description of the attribute"}}></SchemaItem><SchemaItem collapsible={false} name={"sensitivity"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","format":"","example":false,"description":"Sensitivity of data attribute"}}></SchemaItem><SchemaItem collapsible={false} name={"category"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"Personal","description":"Category of data attribute"}}></SchemaItem><SchemaItem collapsible={false} name={"scope"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"read","description":"Scope required for data attribute"}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>restrictions</strong><span className={"openapi-schema__name"}> object[]</span></span></summary><div style={{"marginLeft":"1rem"}}><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem","paddingBottom":".5rem"}}>Array [</div></li><SchemaItem collapsible={false} name={"credDefId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"H3DW1MUWZyBkP5LG4rTYRH:3:CL:80:default","description":"Credential definition ID"}}></SchemaItem><SchemaItem collapsible={false} name={"schemaId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"H3DW1MUWZyBkP5LG4rTYRH:2:Certificate Of Registration:6.0.0","description":"Schema ID"}}></SchemaItem><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></div></details></SchemaItem><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></div></details></SchemaItem><SchemaItem collapsible={false} name={"purpose"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","example":"Marketing communications","description":"Name of purpose"}}></SchemaItem><SchemaItem collapsible={false} name={"purposeDescription"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","example":"Collecting user data for personalised marketing","description":"Description of purpose"}}></SchemaItem><SchemaItem collapsible={false} name={"lawfulBasis"} required={true} schemaName={"string"} qualifierMessage={"**Possible values:** [`consent`, `legal_obligation`, `contract`, `vital_interest`, `public_task`, `legitimate_interest`]"} schema={{"type":"string","format":"","example":"consent","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"]}}></SchemaItem><SchemaItem collapsible={false} name={"methodOfUse"} required={true} schemaName={"string"} qualifierMessage={"**Possible values:** [`null`, `data_source`, `data_using_service`]"} schema={{"type":"string","format":"","example":"data_source","description":"Method of use - null / data_source / data_using_service","enum":[null,"data_source","data_using_service"]}}></SchemaItem><SchemaItem collapsible={false} name={"dpiaDate"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"2024-01-15T00:00:00Z","description":"The date on which the DPIA report is generated after a DPIA"}}></SchemaItem><SchemaItem collapsible={false} name={"dpiaSummaryUrl"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The URl providing the DPIA result reports, summary etc that can be verified by any interested parties"}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>signature</strong><span className={"openapi-schema__name"}> object</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

Signature of authorising party of DataAgreement (Signatures may be chained in the case of multiple signatures)


</div><SchemaItem collapsible={false} name={"id"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"65471222e8c7c3bb3c2c5501","description":"Objects may be passed back by some API endpoints without an id (PK), denoting that they are a \"draft\", i.e. a Signature that is not yet stored in the database and only exists in transit."}}></SchemaItem><SchemaItem collapsible={false} name={"payload"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"{...}","description":"The final payload that is signed, constructed as a JSON serialisation of fields {verificationPayload: ..., verificationPayloadHash: ..., verificationMethod: ..., verificationArtifact: ..., verificationSignedBy: ..., verificationJwsHeader, timestamp: ..., signedWithoutObjectReference: ..., objectType: ..., objectReference: ...}. Serialised as a JSON dict. If the signature is generated before anything is stored in the database (and has a PK), then the objectReference should be omitted from the payload but filled in afterwards."}}></SchemaItem><SchemaItem collapsible={false} name={"signature"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"eyJhbGciOiJFZERTQSJ9...","description":"Signature of payload hash, the format of the signature should be specified by either verificationMethod or verificationJwsHeader"}}></SchemaItem><SchemaItem collapsible={false} name={"verificationMethod"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"Ed25519Signature2020","description":"A well-known string denoting which method is used. Valid values: TBD. This might be expanded with supported verification methods. There may be a minimal set of supported methods necessary."}}></SchemaItem><SchemaItem collapsible={false} name={"verificationPayload"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"{...}","description":"Internally generated serialised version of the data referenced by objectType and objectReference - by extracting and serialising their data as JSON"}}></SchemaItem><SchemaItem collapsible={false} name={"verificationPayloadHash"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"a1b2c3d4e5f6...","description":"Internally generated cryptographic hash of the value to be signed, i.e. the value of verificationPayload"}}></SchemaItem><SchemaItem collapsible={false} name={"verificationArtifact"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"","description":"A verification artifact in the form of a scanned object, image, signature etc"}}></SchemaItem><SchemaItem collapsible={false} name={"verificationSignedBy"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"did:key:z6Mkf...","description":"Because an identifier's information may change over time, there is a need to store that information at the time of signing. In the case of a cryptographic signature, this field should contain some identifier for looking up or verifying the public key of the signing party. In the case of a non-cryptographic signature, this field could contain a natural individual's names, personal number, email addresses - store a snapshot that binds to the signature at the time of signing. In the case of a cryptographic signature, this may be the fingerprint of the individual's public key or in some cases, a token from the user's ID session."}}></SchemaItem><SchemaItem collapsible={false} name={"verificationSignedAs"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"individual","description":"DRAFT FIELD: Specifies the relationship between the authorising signature and the invidual which the payload concerns. This is relevant for Consent Records. Possible values: \"individual\" / \"delegate\"."}}></SchemaItem><SchemaItem collapsible={false} name={"verificationJwsHeader"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"","description":"Alternative to the verificationMethod, verificationHash and verificationSignature, give a JWS serialised object (RFC7515)"}}></SchemaItem><SchemaItem collapsible={false} name={"timestamp"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"2024-01-15T10:30:00Z","description":"Timestamp of signature, currently this field isn't part of the payload so it's not tamper-proof"}}></SchemaItem><SchemaItem collapsible={false} name={"signedWithoutObjectReference"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","format":"","example":false,"description":"Indicates that objectReference was left blank in the serialised version that was signed"}}></SchemaItem><SchemaItem collapsible={false} name={"objectType"} required={false} schemaName={"string"} qualifierMessage={"**Possible values:** [`revision`, `signature`]"} schema={{"type":"string","format":"","example":"revision","description":"Name of the schema model that objectReference points to. Values: \"signature\" or \"revision\"","enum":["revision","signature"]}}></SchemaItem><SchemaItem collapsible={false} name={"objectReference"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"65471222e8c7c3bb3c2c6601","description":"A symmetric relation / back reference to the objectType that was signed. We are currently just modelling signing another signature (a chain) or signing a Revision (which can be a revision of a consent record, an agreement, policy etc)."}}></SchemaItem></div></details></SchemaItem><SchemaItem collapsible={false} name={"active"} required={true} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","format":"","example":true,"description":"DataAgreement is active and new DataAgreementRecords can be created"}}></SchemaItem><SchemaItem collapsible={false} name={"forgettable"} required={true} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","format":"","example":false,"description":"DataAgreementRecord may be deleted when consent is withdrawn, as its existence is not necessary for auditability."}}></SchemaItem><SchemaItem collapsible={false} name={"compatibleWithVersionId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","x-fk-model":"DataAgreement","description":"WIP: This field indicates that Data Agreement Records may be transferred from this  compatible previous revision of the same DataAgreement\n"}}></SchemaItem><SchemaItem collapsible={false} name={"dataUsingServices"} required={false} schemaName={"undefined[]"} qualifierMessage={undefined} schema={{"type":"array","items":[{"type":"object","description":"Data using service organisation for the data agreement","x-not-in-database":false,"required":["name","sector","location"],"properties":{"name":{"type":"string","format":"","example":"","description":"Name of the data using service organisation"},"sector":{"type":"string","format":"","example":"","description":"Defines sector of the organisation"},"location":{"type":"string","format":"","example":"","description":"Defines location of the organisation"},"privacyDashboardUrl":{"type":"string","format":"","example":"","description":"Defines privacy dashboard url of the organisation"}}}]}}></SchemaItem><SchemaItem collapsible={false} name={"openApiSpecification"} required={false} schemaName={"object"} qualifierMessage={undefined} schema={{"type":"object","description":"This field contains OpenAPI specification document describing the API's endpoints, models, and operations."}}></SchemaItem><SchemaItem collapsible={false} name={"dataSources"} required={false} schemaName={"undefined[]"} qualifierMessage={undefined} schema={{"type":"array","items":[{"type":"object","description":"Data source organisation for the data agreement","x-not-in-database":false,"required":["name","sector","location"],"properties":{"name":{"type":"string","format":"","example":"","description":"Name of the data source organisation"},"sector":{"type":"string","format":"","example":"","description":"Defines sector of the organisation"},"location":{"type":"string","format":"","example":"","description":"Defines location of the organisation"},"privacyDashboardUrl":{"type":"string","format":"","example":"","description":"Defines privacy dashboard url of the organisation"}}}]}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>dataExchange</strong><span className={"openapi-schema__name"}> object</span><span className={"openapi-schema__divider"}></span><span className={"openapi-schema__required"}>required</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

Data exchange details

</div><SchemaItem collapsible={false} name={"dataExchangeProfile"} required={false} schemaName={"string"} qualifierMessage={"**Possible values:** [`AIP10`, `OID4VC`]"} schema={{"type":"string","description":"Data exchange profile","enum":["AIP10","OID4VC"]}}></SchemaItem><SchemaItem collapsible={false} name={"id"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Definition id for OID4VC data exchange profile"}}></SchemaItem><SchemaItem collapsible={false} name={"schemaId"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Schema identifier"}}></SchemaItem><SchemaItem collapsible={false} name={"isExistingSchema"} required={true} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","description":"Is schema existing"}}></SchemaItem></div></details></SchemaItem></div></details></SchemaItem></ul></details></TabItem></MimeTabs><div><div><ApiTabs label={undefined} id={undefined}><TabItem label={"200"} value={"200"}><div>

Data agreement (based on ISO 27560) updated successfully

</div><details style={{"textAlign":"left","marginBottom":"1rem"}} className={"openapi-markdown__details"} data-collaposed={true} open={false}><summary style={{}}><strong>Response Headers</strong></summary><ul style={{"marginLeft":"1rem"}}></ul></details><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>dataAgreement</strong><span className={"openapi-schema__name"}> object</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

An agreement contains the specification of a single purpose that can be consented to.  A DataAgreement is universal and can be consented to by *many* individuals through a DataAgreementRecord.


</div><SchemaItem collapsible={false} name={"id"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"65471222e8c7c3bb3c2c8492","description":""}}></SchemaItem><SchemaItem collapsible={false} name={"version"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"1.0.0","description":"The version of this specification to which a receipt conforms"}}></SchemaItem><SchemaItem collapsible={false} name={"controllerId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"ID of the controller"}}></SchemaItem><SchemaItem collapsible={false} name={"controllerUrl"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"URL of data controller (may be omitted if no data involved)"}}></SchemaItem><SchemaItem collapsible={false} name={"controllerName"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Name of data controller (may be omitted if no data involved)"}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>policy</strong><span className={"openapi-schema__name"}> object</span><span className={"openapi-schema__divider"}></span><span className={"openapi-schema__required"}>required</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

Policy under which this DataAgreement shall be governed.  When creating a data agreement, the latest policy can be used to fill the default value,  and organisation admin can decide to change it in the data agreement level.


</div><SchemaItem collapsible={false} name={"id"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"65471222e8c7c3bb3c2c7701","description":""}}></SchemaItem><SchemaItem collapsible={false} name={"name"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"Default data policy","description":"Name of the policy"}}></SchemaItem><SchemaItem collapsible={false} name={"version"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"1.0.0","description":"Version of the policy (it can follow the semver format)"}}></SchemaItem><SchemaItem collapsible={false} name={"url"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"https://example.com/privacy-policy","description":"Permanent URL at which this very version of the Policy can be read, should not be allowed to change over time"}}></SchemaItem><SchemaItem collapsible={false} name={"jurisdiction"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"EU","description":"Jurisdiction"}}></SchemaItem><SchemaItem collapsible={false} name={"industrySector"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"Healthcare","description":"Industry sector"}}></SchemaItem><SchemaItem collapsible={false} name={"dataRetentionPeriodDays"} required={false} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","format":"","example":365,"description":"Data retention period in days"}}></SchemaItem><SchemaItem collapsible={false} name={"geographicRestriction"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"EU","description":"Geographic restriction"}}></SchemaItem><SchemaItem collapsible={false} name={"storageLocation"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"EU","description":"Storage location"}}></SchemaItem><SchemaItem collapsible={false} name={"thirdPartyDataSharing"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","format":"","example":true,"description":"Third party data sharing"}}></SchemaItem></div></details></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>dataAttributes</strong><span className={"openapi-schema__name"}> object[]</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

Data attributes contain specifications of exactly what is collected.


</div><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem","paddingBottom":".5rem"}}>Array [</div></li><SchemaItem collapsible={false} name={"id"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"65471222e8c7c3bb3c2c8501","description":"Data attribute ID"}}></SchemaItem><SchemaItem collapsible={false} name={"name"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"Name","description":"Name of the attribute, for instance \"name\" or \"age\""}}></SchemaItem><SchemaItem collapsible={false} name={"description"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"Full name of the individual","description":"Description of the attribute"}}></SchemaItem><SchemaItem collapsible={false} name={"sensitivity"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","format":"","example":false,"description":"Sensitivity of data attribute"}}></SchemaItem><SchemaItem collapsible={false} name={"category"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"Personal","description":"Category of data attribute"}}></SchemaItem><SchemaItem collapsible={false} name={"scope"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"read","description":"Scope required for data attribute"}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>restrictions</strong><span className={"openapi-schema__name"}> object[]</span></span></summary><div style={{"marginLeft":"1rem"}}><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem","paddingBottom":".5rem"}}>Array [</div></li><SchemaItem collapsible={false} name={"credDefId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"H3DW1MUWZyBkP5LG4rTYRH:3:CL:80:default","description":"Credential definition ID"}}></SchemaItem><SchemaItem collapsible={false} name={"schemaId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"H3DW1MUWZyBkP5LG4rTYRH:2:Certificate Of Registration:6.0.0","description":"Schema ID"}}></SchemaItem><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></div></details></SchemaItem><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></div></details></SchemaItem><SchemaItem collapsible={false} name={"purpose"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Name of purpose"}}></SchemaItem><SchemaItem collapsible={false} name={"purposeDescription"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Description of purpose"}}></SchemaItem><SchemaItem collapsible={false} name={"lawfulBasis"} required={true} schemaName={"string"} qualifierMessage={"**Possible values:** [`consent`, `legal_obligation`, `contract`, `vital_interest`, `public_task`, `legitimate_interest`]"} schema={{"type":"string","format":"","example":"","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"]}}></SchemaItem><SchemaItem collapsible={false} name={"methodOfUse"} required={true} schemaName={"string"} qualifierMessage={"**Possible values:** [`null`, `data_source`, `data_using_service`]"} schema={{"type":"string","format":"","example":"","description":"Method of use - null / data_source / data_using_service","enum":[null,"data_source","data_using_service"]}}></SchemaItem><SchemaItem collapsible={false} name={"dpiaDate"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"","description":"The date on which the DPIA report is generated after a DPIA"}}></SchemaItem><SchemaItem collapsible={false} name={"dpiaSummaryUrl"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The URl providing the DPIA result reports, summary etc that can be verified by any interested parties"}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>signature</strong><span className={"openapi-schema__name"}> object</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

Signature of authorising party of DataAgreement (Signatures may be chained in the case of multiple signatures)


</div><SchemaItem collapsible={false} name={"id"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"65471222e8c7c3bb3c2c5501","description":"Objects may be passed back by some API endpoints without an id (PK), denoting that they are a \"draft\", i.e. a Signature that is not yet stored in the database and only exists in transit."}}></SchemaItem><SchemaItem collapsible={false} name={"payload"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"{...}","description":"The final payload that is signed, constructed as a JSON serialisation of fields {verificationPayload: ..., verificationPayloadHash: ..., verificationMethod: ..., verificationArtifact: ..., verificationSignedBy: ..., verificationJwsHeader, timestamp: ..., signedWithoutObjectReference: ..., objectType: ..., objectReference: ...}. Serialised as a JSON dict. If the signature is generated before anything is stored in the database (and has a PK), then the objectReference should be omitted from the payload but filled in afterwards."}}></SchemaItem><SchemaItem collapsible={false} name={"signature"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"eyJhbGciOiJFZERTQSJ9...","description":"Signature of payload hash, the format of the signature should be specified by either verificationMethod or verificationJwsHeader"}}></SchemaItem><SchemaItem collapsible={false} name={"verificationMethod"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"Ed25519Signature2020","description":"A well-known string denoting which method is used. Valid values: TBD. This might be expanded with supported verification methods. There may be a minimal set of supported methods necessary."}}></SchemaItem><SchemaItem collapsible={false} name={"verificationPayload"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"{...}","description":"Internally generated serialised version of the data referenced by objectType and objectReference - by extracting and serialising their data as JSON"}}></SchemaItem><SchemaItem collapsible={false} name={"verificationPayloadHash"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"a1b2c3d4e5f6...","description":"Internally generated cryptographic hash of the value to be signed, i.e. the value of verificationPayload"}}></SchemaItem><SchemaItem collapsible={false} name={"verificationArtifact"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"","description":"A verification artifact in the form of a scanned object, image, signature etc"}}></SchemaItem><SchemaItem collapsible={false} name={"verificationSignedBy"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"did:key:z6Mkf...","description":"Because an identifier's information may change over time, there is a need to store that information at the time of signing. In the case of a cryptographic signature, this field should contain some identifier for looking up or verifying the public key of the signing party. In the case of a non-cryptographic signature, this field could contain a natural individual's names, personal number, email addresses - store a snapshot that binds to the signature at the time of signing. In the case of a cryptographic signature, this may be the fingerprint of the individual's public key or in some cases, a token from the user's ID session."}}></SchemaItem><SchemaItem collapsible={false} name={"verificationSignedAs"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"individual","description":"DRAFT FIELD: Specifies the relationship between the authorising signature and the invidual which the payload concerns. This is relevant for Consent Records. Possible values: \"individual\" / \"delegate\"."}}></SchemaItem><SchemaItem collapsible={false} name={"verificationJwsHeader"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"","description":"Alternative to the verificationMethod, verificationHash and verificationSignature, give a JWS serialised object (RFC7515)"}}></SchemaItem><SchemaItem collapsible={false} name={"timestamp"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"2024-01-15T10:30:00Z","description":"Timestamp of signature, currently this field isn't part of the payload so it's not tamper-proof"}}></SchemaItem><SchemaItem collapsible={false} name={"signedWithoutObjectReference"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","format":"","example":false,"description":"Indicates that objectReference was left blank in the serialised version that was signed"}}></SchemaItem><SchemaItem collapsible={false} name={"objectType"} required={false} schemaName={"string"} qualifierMessage={"**Possible values:** [`revision`, `signature`]"} schema={{"type":"string","format":"","example":"revision","description":"Name of the schema model that objectReference points to. Values: \"signature\" or \"revision\"","enum":["revision","signature"]}}></SchemaItem><SchemaItem collapsible={false} name={"objectReference"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"65471222e8c7c3bb3c2c6601","description":"A symmetric relation / back reference to the objectType that was signed. We are currently just modelling signing another signature (a chain) or signing a Revision (which can be a revision of a consent record, an agreement, policy etc)."}}></SchemaItem></div></details></SchemaItem><SchemaItem collapsible={false} name={"active"} required={true} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","format":"","example":"","description":"DataAgreement is active and new DataAgreementRecords can be created"}}></SchemaItem><SchemaItem collapsible={false} name={"forgettable"} required={true} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","format":"","example":"","description":"DataAgreementRecord may be deleted when consent is withdrawn, as its existence is not necessary for auditability."}}></SchemaItem><SchemaItem collapsible={false} name={"compatibleWithVersionId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","x-fk-model":"DataAgreement","description":"WIP: This field indicates that Data Agreement Records may be transferred from this  compatible previous revision of the same DataAgreement\n"}}></SchemaItem><SchemaItem collapsible={false} name={"lifecycle"} required={true} schemaName={"string"} qualifierMessage={"**Possible values:** [`draft`, `complete`]"} schema={{"type":"string","description":"WIP: Current Lifecycle state of the DataAgreement.  Lifecycle states are used to manage internal workflows and  should not be assigned semantic meanings for active Data Agreement Records.\n","enum":["draft","complete"]}}></SchemaItem><SchemaItem collapsible={false} name={"dataUsingServices"} required={false} schemaName={"undefined[]"} qualifierMessage={undefined} schema={{"type":"array","items":[{"type":"object","description":"Data using service organisation for the data agreement","x-not-in-database":false,"required":["name","sector","location"],"properties":{"name":{"type":"string","format":"","example":"","description":"Name of the data using service organisation"},"sector":{"type":"string","format":"","example":"","description":"Defines sector of the organisation"},"location":{"type":"string","format":"","example":"","description":"Defines location of the organisation"},"privacyDashboardUrl":{"type":"string","format":"","example":"","description":"Defines privacy dashboard url of the organisation"}}}]}}></SchemaItem><SchemaItem collapsible={false} name={"openApiSpecification"} required={false} schemaName={"object"} qualifierMessage={undefined} schema={{"type":"object","description":"This field contains OpenAPI specification document describing the API's endpoints, models, and operations."}}></SchemaItem><SchemaItem collapsible={false} name={"dataSources"} required={false} schemaName={"undefined[]"} qualifierMessage={undefined} schema={{"type":"array","items":[{"type":"object","description":"Data source organisation for the data agreement","x-not-in-database":false,"required":["name","sector","location"],"properties":{"name":{"type":"string","format":"","example":"","description":"Name of the data source organisation"},"sector":{"type":"string","format":"","example":"","description":"Defines sector of the organisation"},"location":{"type":"string","format":"","example":"","description":"Defines location of the organisation"},"privacyDashboardUrl":{"type":"string","format":"","example":"","description":"Defines privacy dashboard url of the organisation"}}}]}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>dataExchange</strong><span className={"openapi-schema__name"}> object</span><span className={"openapi-schema__divider"}></span><span className={"openapi-schema__required"}>required</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

Data exchange details

</div><SchemaItem collapsible={false} name={"dataExchangeProfile"} required={false} schemaName={"string"} qualifierMessage={"**Possible values:** [`AIP10`]"} schema={{"type":"string","description":"Data exchange profile","enum":["AIP10"]}}></SchemaItem><SchemaItem collapsible={false} name={"id"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Data agreement ID defined in AIP"}}></SchemaItem><SchemaItem collapsible={false} name={"credentialDefinitionId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Credential definition identifier"}}></SchemaItem><SchemaItem collapsible={false} name={"schemaId"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Schema identifier"}}></SchemaItem><SchemaItem collapsible={false} name={"isExistingSchema"} required={true} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","description":"Is schema existing"}}></SchemaItem><SchemaItem collapsible={false} name={"qrId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string"}}></SchemaItem><SchemaItem collapsible={false} name={"firebaseDynamicLink"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string"}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>presentationRequest</strong><span className={"openapi-schema__name"}> object</span></span></summary><div style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"name"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Name of the presentation request"}}></SchemaItem><SchemaItem collapsible={false} name={"version"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Version of the presentation request"}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>requestedAttributes</strong><span className={"openapi-schema__name"}> object</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

Map of requested attributes

</div><SchemaItem collapsible={false} name={"name"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Name of the requested attribute"}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>restrictions</strong><span className={"openapi-schema__name"}> object[]</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

List of restrictions for the requested attribute

</div><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem","paddingBottom":".5rem"}}>Array [</div></li><SchemaItem collapsible={false} name={"schemaId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Schema identifier"}}></SchemaItem><SchemaItem collapsible={false} name={"credDefId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Credential definition identifier"}}></SchemaItem><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></div></details></SchemaItem></div></details></SchemaItem></div></details></SchemaItem></div></details></SchemaItem></div></details></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>revision</strong><span className={"openapi-schema__name"}> object</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

A *generic* revision model captures the serialised contents of any schema's single row. This is then subject to 1) cryptographic signature and 2) auditing.

Aside from the "successor" column, a revision should be considered locked.

</div><SchemaItem collapsible={false} name={"id"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"65471222e8c7c3bb3c2c6601","description":"Revision ID"}}></SchemaItem><SchemaItem collapsible={false} name={"schemaName"} required={true} schemaName={"string"} qualifierMessage={"**Possible values:** [`dataAgreement`, `policy`, `dataAgreementRecord`]"} schema={{"type":"string","format":"","example":"dataAgreement","description":"Previously \"schema\" but for technical reasons should be called \"schemaName\"","enum":["dataAgreement","policy","dataAgreementRecord"]}}></SchemaItem><SchemaItem collapsible={false} name={"objectId"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"65471222e8c7c3bb3c2c8492","description":"The PK of the object that was serialised"}}></SchemaItem><SchemaItem collapsible={false} name={"objectData"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"{...}","description":"The object that is serialised"}}></SchemaItem><SchemaItem collapsible={false} name={"signedWithoutObjectId"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","format":"","example":false,"description":"Indicates that objectId was left blank in serizalizedSnapshot when calculating serializedHash. objectId may subsequently be filled in."}}></SchemaItem><SchemaItem collapsible={false} name={"serizalizedSnapshot"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"{...}","description":"Revisioned data (sed as JSON) as a dict. Apply JSON Canonicalization Scheme as per IETF RFC 8785.  It contains all the fields of the schema except sucessorId, serializedHash, serializedSnapshot.\n"}}></SchemaItem><SchemaItem collapsible={false} name={"serializedHash"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2","description":"Hash of serizalizedSnapshot (SHA-1)"}}></SchemaItem><SchemaItem collapsible={false} name={"timestamp"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"2024-01-15T10:30:00Z","description":"Timestamp of when revisioning happened. It should be ISO 8601 UTC date time"}}></SchemaItem><SchemaItem collapsible={false} name={"authorizedByIndividualId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"description":"Individual ID","type":"string"}}></SchemaItem><SchemaItem collapsible={false} name={"authorizedByOtherId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"64541a2e6e7569000145ab00","description":"Reference to an admin user that has created this revision"}}></SchemaItem><SchemaItem collapsible={false} name={"successorId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"x-fk-model":"Revision","type":"string","description":"If this revision is no longer the latest revision, refer to its successor"}}></SchemaItem><SchemaItem collapsible={false} name={"predecessorHash"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3","description":"Tamper-resistent artifact from previous record, copied from serializedHash"}}></SchemaItem><SchemaItem collapsible={false} name={"predecessorSignature"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"c3d4e5f6a1b2...","description":"Tamper-resistent artifact from previous record (we don't know if the previous record was signed or not)"}}></SchemaItem></div></details></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"dataAgreement\": {\n    \"id\": \"65471222e8c7c3bb3c2c8492\",\n    \"version\": \"1.0.0\",\n    \"controllerId\": \"string\",\n    \"controllerUrl\": \"string\",\n    \"controllerName\": \"string\",\n    \"policy\": {\n      \"id\": \"65471222e8c7c3bb3c2c7701\",\n      \"name\": \"Default data policy\",\n      \"version\": \"1.0.0\",\n      \"url\": \"https://example.com/privacy-policy\",\n      \"jurisdiction\": \"EU\",\n      \"industrySector\": \"Healthcare\",\n      \"dataRetentionPeriodDays\": 365,\n      \"geographicRestriction\": \"EU\",\n      \"storageLocation\": \"EU\",\n      \"thirdPartyDataSharing\": true\n    },\n    \"dataAttributes\": [\n      {\n        \"id\": \"65471222e8c7c3bb3c2c8501\",\n        \"name\": \"Name\",\n        \"description\": \"Full name of the individual\",\n        \"sensitivity\": false,\n        \"category\": \"Personal\",\n        \"scope\": \"read\",\n        \"restrictions\": [\n          {\n            \"credDefId\": \"H3DW1MUWZyBkP5LG4rTYRH:3:CL:80:default\",\n            \"schemaId\": \"H3DW1MUWZyBkP5LG4rTYRH:2:Certificate Of Registration:6.0.0\"\n          }\n        ]\n      }\n    ],\n    \"purpose\": \"string\",\n    \"purposeDescription\": \"string\",\n    \"lawfulBasis\": \"\",\n    \"methodOfUse\": \"\",\n    \"dpiaDate\": \"\",\n    \"dpiaSummaryUrl\": \"string\",\n    \"signature\": {\n      \"id\": \"65471222e8c7c3bb3c2c5501\",\n      \"payload\": \"{...}\",\n      \"signature\": \"eyJhbGciOiJFZERTQSJ9...\",\n      \"verificationMethod\": \"Ed25519Signature2020\",\n      \"verificationPayload\": \"{...}\",\n      \"verificationPayloadHash\": \"a1b2c3d4e5f6...\",\n      \"verificationArtifact\": \"\",\n      \"verificationSignedBy\": \"did:key:z6Mkf...\",\n      \"verificationSignedAs\": \"individual\",\n      \"verificationJwsHeader\": \"\",\n      \"timestamp\": \"2024-01-15T10:30:00Z\",\n      \"signedWithoutObjectReference\": false,\n      \"objectType\": \"revision\",\n      \"objectReference\": \"65471222e8c7c3bb3c2c6601\"\n    },\n    \"active\": \"\",\n    \"forgettable\": \"\",\n    \"compatibleWithVersionId\": \"string\",\n    \"lifecycle\": \"draft\",\n    \"dataUsingServices\": [\n      null\n    ],\n    \"openApiSpecification\": {},\n    \"dataSources\": [\n      null\n    ],\n    \"dataExchange\": {\n      \"dataExchangeProfile\": \"AIP10\",\n      \"id\": \"string\",\n      \"credentialDefinitionId\": \"string\",\n      \"schemaId\": \"string\",\n      \"isExistingSchema\": true,\n      \"qrId\": \"string\",\n      \"firebaseDynamicLink\": \"string\",\n      \"presentationRequest\": {\n        \"name\": \"string\",\n        \"version\": \"string\",\n        \"requestedAttributes\": {\n          \"name\": \"string\",\n          \"restrictions\": [\n            {\n              \"schemaId\": \"string\",\n              \"credDefId\": \"string\"\n            }\n          ]\n        }\n      }\n    }\n  },\n  \"revision\": {\n    \"id\": \"65471222e8c7c3bb3c2c6601\",\n    \"schemaName\": \"dataAgreement\",\n    \"objectId\": \"65471222e8c7c3bb3c2c8492\",\n    \"objectData\": \"{...}\",\n    \"signedWithoutObjectId\": false,\n    \"serizalizedSnapshot\": \"{...}\",\n    \"serializedHash\": \"a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2\",\n    \"timestamp\": \"2024-01-15T10:30:00Z\",\n    \"authorizedByIndividualId\": \"string\",\n    \"authorizedByOtherId\": \"64541a2e6e7569000145ab00\",\n    \"successorId\": \"string\",\n    \"predecessorHash\": \"b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3\",\n    \"predecessorSignature\": \"c3d4e5f6a1b2...\"\n  }\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"400"} value={"400"}><div>

bad input parameter

</div><details style={{"textAlign":"left","marginBottom":"1rem"}} className={"openapi-markdown__details"} data-collaposed={true} open={false}><summary style={{}}><strong>Response Headers</strong></summary><ul style={{"marginLeft":"1rem"}}></ul></details><div></div></TabItem><TabItem label={"401"} value={"401"}><div>

Unauthorized

</div><details style={{"textAlign":"left","marginBottom":"1rem"}} className={"openapi-markdown__details"} data-collaposed={true} open={false}><summary style={{}}><strong>Response Headers</strong></summary><ul style={{"marginLeft":"1rem"}}></ul></details><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"errorCode"} required={true} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","example":400}}></SchemaItem><SchemaItem collapsible={false} name={"errorDescription"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","example":"Bad input parameter"}}></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"errorCode\": 400,\n  \"errorDescription\": \"Bad input parameter\"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"404"} value={"404"}><div>

Resource not found

</div><details style={{"textAlign":"left","marginBottom":"1rem"}} className={"openapi-markdown__details"} data-collaposed={true} open={false}><summary style={{}}><strong>Response Headers</strong></summary><ul style={{"marginLeft":"1rem"}}></ul></details><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"errorCode"} required={true} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","example":400}}></SchemaItem><SchemaItem collapsible={false} name={"errorDescription"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","example":"Bad input parameter"}}></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"errorCode\": 400,\n  \"errorDescription\": \"Bad input parameter\"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"500"} value={"500"}><div>

Internal server error

</div><details style={{"textAlign":"left","marginBottom":"1rem"}} className={"openapi-markdown__details"} data-collaposed={true} open={false}><summary style={{}}><strong>Response Headers</strong></summary><ul style={{"marginLeft":"1rem"}}></ul></details><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"errorCode"} required={true} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","example":400}}></SchemaItem><SchemaItem collapsible={false} name={"errorDescription"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","example":"Bad input parameter"}}></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"errorCode\": 400,\n  \"errorDescription\": \"Bad input parameter\"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem></ApiTabs></div></div>
      