---
id: config-list-agreement
title: "List all data agreements"
description: "This endpoint allows the admin to read all data agreements and their revisions defined earlier in an organisation."
sidebar_label: "List all data agreements"
hide_title: true
hide_table_of_contents: true
api: eJztPGtz2ziSf6WLX+JsyfQjcTKj2to6J04yyuShs51J3cSuBCKbEsYgwAFA21qXvu0vuZ92v+SqAfAp2pGTbF3d1s6HjCwS3Y1Gv7uhmyhFk2heWK5kNI5OF9wAyrRQXFpgQqgrA3aBwNKcS7AKNLKUHkDKLAM214g5SmuAyZTe5Bo0XnLDlTSQYsYlpoBMC44auAQmQek5k9wwwhlHo0gVqN0fkzQaR4mSGZ+/4cYeVsCjUVQwzXK0qE00/nTTo/pQgpr9gYmFK24XMDmqSZik0Sji9M6fJeplNIokyzEaR50XNP5Zco1pNM6YMDiKTLLAnEXjm8guC3rdWM3lPFqtRn3c78p8hhpUBhoTpVNDTDIXvIBMaSjYnMt6o0OEqCwzaDcigkuLc9SeirBc8JzbPuguhW/ZNc/LHOQQpRptqSUU6GjF+F6EEKaMlcJG473dAd685MIiMW5NWGZLSDXL7E6i8kKgxRSMZbY0t3BJ8AyTZSIwutfhHBFavE4WTM4RLNNzXGNWwFA/3FgYRhHKMo/Gn6KUz7ll4vMVEwJtdL5anRMcUyhp0NDK/d1d+l+ipCV5Ht9ErCgET5xo7PxhiNqbFqZCk1JY7lcT92plcN9wi7n7wIR4nzmVCMR5RYhGkeVWYOBBW5PWVKc+FiDyGJde402BCc8CiSQ1DAyXc4FQlLpQBsEumIWESZghLTUo6RytigEOoYMWuIFS8kvUhglnKQaWkVD8JWdy+RfgMuWXPC2ZIFq0KucLYF2Qx06G4zMZjaLrbansNpfbxKgZM1ifXXOYn6JANhkT/+moxYmROxuthED9QYvO3+9IQkZRoQRPSGIEu8pK8YwZTuKao12o9H32wYFmieWX9CFTJE+WzZzMNvJ7PuodLk+HRCtTOmc2GkckZteMlCQaR08OHj/d29/fx5+Sp8mj2exRsp/89Pjn/bVjjVajiLjNvWBtBn0v3o1310CdLhACKJICSx6iKxtWwdWCJ3REGhPkhZMkwmGIjoaRk8GtdtFNjjwWJxthXRcKHc9XwXw4fkNwnN1plsJWzpYkdyrnlqSOZyCVf4vLSyUuMX3YxeYO/6vo6K3vwRdka9w3YFP3PZQyRR2Y7A6gq11mQQ55hjBXl6glpjHAxwVKSDQyS/aX9SzwyHFYMIvGgkdeqWRpvDZmXAj3VrDxcMlEiSNw6tt24SE2oOUpJjxFWh1MLrfk8x2UDn4QeInCa+9thmta6dtm6i29lpZa/Hgde/p0d29Qx+Qt0jEM+ihw0vGiNifDkkQ8C6/8OF3+ra3HFXzY4t6MZ4riPW/8Mb9EDR62k9ByWOuGsS+sLcx4Zyd8Eycq3yk0v2TJcvuWfU9R50ySaJDqMtuW9kvUy64NQph2hJai0hGYhSpFClJZ+s5Fr16WgzSSdoDlOdKG/ig1NylP7L34+uLDGuWv24BWFF2kpbF6eYKJVXpz0L8gE3aRMI3rRjGABONhrkYuJjhGiia4klPUXKVHbGkGo7RBfI+eHPTRuHBJV0ApKOQqJQVOCfJqFM1RzTUrFjw5RtrN9zPvVQ0RdAvkahQZqzSb4xvlvcx3YTnxsEBUwFajyC64TqdM2yVt+2TBHNAGy0wpgUzehsbqEtddJdcpFATT67gJUFercGKH1mo+Ky22D4ppzUghNgjqBs6L1SCr+K3rng1pDF6zxIolXFHIxulNITCxmMb3ta9tCn58LHMwYGe7u4TJ0f0N77t12ruWtgY/cmkbl8YymSCcOURnESgNZxGb45kz+x1AmxLxshQCZAtpE+Wu77n5a41EpxwoDbf8ktvl5iIbDrWnGg2kOoDpoEqYxbnSy803OkVtlBzY1fMAahiRSVRxjzMlk7+u6AQDKrF1Z9lH5NLEvl51xbhlie7U07u1k0oYPttuQbtL27pEJBrTI8yGY+ZbPMijo497bz98/H357GJ68ObVY336X8e/jB+Nn78Z/7Q7rpL1tWPRmJLJZ8IXbLgTO69nPiX9AUTsj5/T3pxVQnifwTHOubG+8DN+MhiunDjkjhL333lf9X6IBTxz7qDKDjcO9asFq8F88qtgehregtZOLzfm+rr0OSgwIzC1CanD7+0q84YdEDhn4rOaCT738fyOz2BYQk8vXWWDYgmSY9iBopwJnny2zFz4xdzynFms32kVRgISSoB7SKoEmznF6SJxGXqNxC9eQ0Ky0E69v51Tbx0U4lFpELZBkp3ecXbjs1GlTrD6q6QCyGeD+pIn2GyTFnj3Ht6Pwl/d9530FpwdMfs95J76ZApByTpGRjiaTg5BY6G0k+45SqqpYgoss6ipeDKdHEaBgpMyz5lebpRIE7oPxwIKrS55SrlkC52hbMZjNSMwHiygTTq1oUvUPOOYUoGHySVUZ4g+ViJ7R5aGzyWzpXa8ud7OLrZzlaIgM1A/WTMQ1RNXnyrtQmlOPA8xmMp6ifJWvcBAyMyTBXMl6pCmJsw4YHkpLC8EQk2WeXhnttomcsN6FFsK5XyYaa31zPKGy0tm78tpvWzg21+YWfSeEGGYPls6WnM0luXFj4/cDoYit/eOSTWrC2aotjBjyQWJglE5wuF0UvcbjCvfq9JSk4CnsDX99eEIUpTKerljls5oCUwjMDiLXAn5LBoBjzEGBo042GDlKRVcogVKJppDro7FlzKkWAJec2ONe64ZBUSxs+uB1Rtz5iaO49WgCmVcMgEBYE2ecWczcsbY6jJxCmuAweuT9+/AoOZMVFUWlUHGUaQGbgYOfgxxHI/gFpEYeOpla+DBIXlpltiBR5UoDTx6fWV+QZaiHkEtZeE1v8mP/mi9SBxjhhplguEVr02ny6L7Rfe1VQwngSMdNlHqHcPEu7halbpWcIaZIqGRS7sgWSLeD4vEFsnEwkF34mepjkZv9Eiqig2t4l6mVe7rKuGYZ6V1ZTSPxlniK6ZTE6/Zu83EC5evF7NXCX/PX7/8/cXx6X+evP45juO7zWJFzIKZhS/7eeBVUNBwrNlRCJ+8yUZuF6gHhIeSokEZCBWrvh3bPINP9w8O9n6ut7G/u78eHB7CFQqxfSHVlQQPsLEV3jH6+MA1HwwVRX9jgqe+jmnGcPrsKAbX8Mz5fOFKRnhdMJli6vuIpizIs2Ha2WWAamgtaqyMG4OcS54zAQYdb5vVYQFITNAYppdxn0HTH2NoJuRYJRNi2RJ90+hMr4SW+nJPEGh31o0ietvYk/ltJw/XLmxzZWXZwA+hAa8yLuO085adOj+18W7Z3mw/eZQ+xoPsyZC8D+470cvC1sUlkv5q304AXMMJawvsPEjzUGVDprS/mcpUfkc0d9iVLRYgVmaJoITeW8IkxSn+SEbAczbHUUt70SZ9+mrXvzF9KU/HF7gc//3J24tsiNXPMGGl85zAXdKYcdQPyHN6gE5B2HKt4uosj7fKDCT6sqwzwcEZttZ7N++WOUXic8nlPIZJN0RjvSOuWTHyVWPnLSujVieGFHQ0lLsKgVDqgqS3LGqLtqwCXZ+IwAUu2/ayDjEHiJJKbm9CWNKhi4F7hYlWVeiBceUiM6JKrKuohB7+CDBnXABLU43GoIHtwEsGRrLCLJT1bJ1x6fv8XUv/gzgcTJ/18c0cdaFpbGStvPXAdPjo5kDcQRAiMwIGVl2gbBxoaZxQTY7AoDFuemJQtA/vkSHfVW07Pnx5Ci8nL94cjeEk+D7fBdcofA1hwQuYob3CEA60s40WY/0QDDX3HKpWhlb54UTJBLU0wfdwQzjwkknrhPF5yMt9f9vEMFXG8JnA2m+dtbZyFsEOBcJI+bXFs2iNUY1T/g4jJZx9pc52JUvr7r0bD5KBd9zoH1qQnznBYvD640nbQYUpnq3jl8+fHuwduMZTk7RsvIH93f3H27t723sHp3u740e7493d39ej8gpupQGBsqTUGiWVilrKyo18YJ3K172zcJxGAbcPfKZB0FBvF1qprArxbot8v7NsO5Gpq6QZr+d9R33FDAjMLMwEkxeVNxkIBdxqetvTSlQ3McB9irF+nOrOIruvJYJL64fJDmkgjZD8Vkt7fTZVGb5Cdha1Sk0tCprI+rzezhDfvyHNffJkIM09BLPMc6Qib20vYMfnuXV4VSlOK8Lq8T6Gj+hS20YC/yiN9fwSlZ3xYZdyIXljd7aYL2Q8JA7Vr8FxYApseTsUCjKsno8LVj7YHD8XNiLn3poUCF1itMnD2HeywpDLxhK8blHWpoM8SGcxJF4NjfqYemaIhhq8qLaHbH4UNR5b5dvIslI0eeXGKQKfuK9UpJpdyRFFutwaX0JwJx3qDnW47+w6K1Nu2YwLbn38T5NvzJJlJwMROvNfL7R3KmN3z3Z9nEzH3skEI9a1Ga523hxCxeXKqVMdJEOtm8SWG4CGaihIiFRpOsLk9Jx0vkOaL7E3Q1BfrTo60p97PYA31To3I1ibkw6GGPqvGadL1TRLziQ1gHnIFOBK6YvMTbeSyPUnB4zXSBqDYNLyBHJkpFLGH6WX1WH++ZmWejKQKlSRP2wSJF8EZpZ9oMDhxFeG7+gxbdYCLn0U4qF1Z3OI3vXxm/s2fcPYwSiqG+hrBcT7NWTv9BPp3Xvy/c/7zVYMtF9oMtmEgYoKcx+NuPfwwa2IKlC3oQrjMUfMLGaK6fSW4vw9sQaokFZgodRimATfXlMFysOCn7T7Z19vdZ6205owQ/qeIE0nvVnBVCWlUxcPYFblWYfTyYNm8tyMvNej3IDKENWAuK+ckXycuEbLd2tO6O/8a6jMwGb+rSv/NF0ZnCMYHLp+QQUzE3XFhE7sRZhMXxeNztOvql93zD1Fy7gwa1MNbZhTrTK+iSPugi7CssbBHU6me7vOqw13kIba9bXLnBzVN0S4hMPJ1MVF9TTCUT2MsMng8PAUQ1Pq+do0w+DoQXc5Ny8oyCPP3b8T0MScvTzNVGkPhqUE6M/BUWgKaLlGsixHS8lynrzh8mLwvUIjRaJOHI/xz5I64gNispm9uWMAtYXGTdUQnrvHUe8eOL0FXviI6eB83C1S/5YVfrwmrG3NgfyArQ+A9ZR+22hQl5zvlMM7R4PuqxWrtaGaocGl2isO8sUBoRhXyeqGit9if5zq/x9r1kXzn6Fo/5a2+0lbfTSVO10zzS1jfx5i2w73XHu/upw3xMP6GkLz1tqInk9Qp6zjpNu34zrMCeks3bMLhfx2YLJHFCrLxKR3qrfBO6WXW7f6nDQAu2RchFtHNez9gwo40fotwIloQ9NkVKWVUF07bKbJXX5PX34d9rseydXlww43dlejaMHMNBQZNnG1dXmDZ77b9ICaTXWZoo/Cxe4eyzu8tt+OQeK1XYNO8+FeTLuCNaABR73LkVs1mycn72H/6cGT3YcguFMDUyZUVcpKIcgCLFxpn7hDYB/7W4Zd6DNG0VVRuvK1v0M7sHDvXtcT25qHWiv9XKVu9/S5PQZ5vj4w1VWhZvWQ3NTcfLxL8rAGfuhOZh3oPxvYeLAcvbtiMjRz/o7pGmsO7nlz81+LNVVn3RViUIND0+ORTzFL7WbRP91EhwX/FenjOWVIz5Bp1IelXbhvaNdsTvl51K2fET/yMCcS+Zu4BaNF0Y6/Eb5D+ct2oyYuxyaihm6EH2GuAs3hTlhzKSnFXG2zgsd8rpm0MVc7l/vR+uXhE0uWf34bGOMfD0A6bxjinJE/zootjRf3X4TryJ6jzX3kwyCSlefptRymE9dLJcEl5+rF0Y2kNBMM5EC/dOB8AY8GcmoszFxAnvHrauDli6cRvsCWVNY3dq1m3DcfCpbgwxFgPI97YMcQFv51qUpNHNm+wOXfvrhqTVsAbqKZ++tllZm//ni6vjdn4UJLOMwMOvI8pECzyxjbREDNQaeMzo67Bc3QJh0dXROPaNqg0uowv+E66qQtfmznP+ojbY6Ev2q+6spC8/KaBtWLYOt//vHfD/0AxMkVptwsfNmmzq777dK6+ulnb1HHMLFU0aZSjMi2DU1XIJ9XEZZdVj1Y8v/QJNKuxR4uqYO/pO5HdxTNQxUqBYvJQiqh5pz68SjZTPgOEjVj3F1N567JGrhinO9jOCCstCr3t0xdlZu7izPuwMKA0bwMPXQ3BQfOd1X9EEEDVFKijt0t6QSln+WutKBgyQJh310O6PL86uoqZu5xrPR8J6w1O28mz1+8O3mxTWtWTRjXnAPpTlWGrLSrTmhd7zh+FO/5W7nG5ky26HHB6sCvX/SFuOUw/m9+UyNIvMVru1MIxmXrDqe3q5/CL22EYfW2ZT0fRQtFFYVP0c0NBSMftFit6Gv/ownO3nJDp5cO96fb+//Kr3MMUnpBlrL7Ix3OrPlrt/fBfp/f57iDlPpnOr6RjPv+CMcdpFSx9zdS8m0/ynEnPc1vc3wjTbf8TscdSOt3Gozn9IfmvhlMwUflU0lc/SpyLUV71Vost2qHIa9ekHdiwXU1bvvCue3wodVpYHLZgt334J4E+rdVOe4u+SvZpl9x+bf6df/k1gW1z/NvE4co2/1f4bAVLQ==
sidebar_class_name: "get 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"}>List all data agreements</h1>

<MethodEndpoint method={"get"} path={"/config/data-agreements"}></MethodEndpoint>



This endpoint allows the admin to read all data agreements and their revisions defined earlier in an organisation.

## Request

<details style={{"marginBottom":"1rem"}} className={"openapi-markdown__details"} data-collapsed={false} open={true}><summary style={{}}><h3 className={"openapi-markdown__details-summary-header-params"}>Query Parameters</h3></summary><div><ul><ParamsItem className={"paramsItem"} param={{"description":"An object with ID revisionId","in":"query","name":"revisionId","required":false,"schema":{"type":"string"}}}></ParamsItem><ParamsItem className={"paramsItem"} param={{"description":"Number of records to skip for pagination.","in":"query","name":"offset","required":false,"schema":{"type":"integer"}}}></ParamsItem><ParamsItem className={"paramsItem"} param={{"name":"limit","in":"query","description":"Maximum number of records to return per page.","required":false,"schema":{"type":"integer","default":10}}}></ParamsItem><ParamsItem className={"paramsItem"} param={{"description":"Filtering data agreements by draft/completed status","in":"query","name":"lifecycle","schema":{"type":"string"}}}></ParamsItem><ParamsItem className={"paramsItem"} param={{"description":"Data exchange target","in":"query","name":"target","required":false,"schema":{"type":"string","enum":["digital_wallet"]}}}></ParamsItem></ul></div></details><div><div><ApiTabs label={undefined} id={undefined}><TabItem label={"200"} value={"200"}><div>

Data agreements (based on ISO 27560) listed 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={false} name={"dataAgreements"} required={false} schemaName={"object[]"} qualifierMessage={undefined} schema={{"items":{"allOf":[{"type":"object","title":"DataAgreement","description":"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.\n","x-not-in-database":false,"required":["purpose","purposeDescription","controllerUrl","controllerName","policy","lawfulBasis","methodOfUse","active","forgettable","lifecycle"],"properties":{"id":{"type":"string","format":"","example":"65471222e8c7c3bb3c2c8492","description":""},"version":{"type":"string","format":"","example":"1.0.0","description":"The version of this specification to which a receipt conforms"},"controllerId":{"type":"string","description":"ID of the controller"},"controllerUrl":{"type":"string","description":"URL of data controller (may be omitted if no data involved)"},"controllerName":{"type":"string","description":"Name of data controller (may be omitted if no data involved)"},"policy":{"description":"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.\n","type":"object","title":"Policy","x-not-in-database":false,"required":["name","url"],"properties":{"id":{"type":"string","format":"","example":"65471222e8c7c3bb3c2c7701","description":""},"name":{"type":"string","format":"","example":"Default data policy","description":"Name of the policy"},"version":{"type":"string","format":"","example":"1.0.0","description":"Version of the policy (it can follow the semver format)"},"url":{"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"},"jurisdiction":{"type":"string","format":"","example":"EU","description":"Jurisdiction"},"industrySector":{"type":"string","format":"","example":"Healthcare","description":"Industry sector"},"dataRetentionPeriodDays":{"type":"integer","format":"","example":365,"description":"Data retention period in days"},"geographicRestriction":{"type":"string","format":"","example":"EU","description":"Geographic restriction"},"storageLocation":{"type":"string","format":"","example":"EU","description":"Storage location"},"thirdPartyDataSharing":{"type":"boolean","format":"","example":true,"description":"Third party data sharing"}}},"dataAttributes":{"type":"array","items":{"allOf":[{"type":"object","description":"Data attributes contain specifications of exactly what is collected.","x-not-in-database":false,"required":["name","description"],"properties":{"id":{"type":"string","format":"","example":"65471222e8c7c3bb3c2c8501","description":"Data attribute ID"},"name":{"type":"string","format":"","example":"Name","description":"Name of the attribute, for instance \"name\" or \"age\""},"description":{"type":"string","format":"","example":"Full name of the individual","description":"Description of the attribute"},"sensitivity":{"type":"boolean","format":"","example":false,"description":"Sensitivity of data attribute"},"category":{"type":"string","format":"","example":"Personal","description":"Category of data attribute"},"scope":{"type":"string","format":"","example":"read","description":"Scope required for data attribute"}}},{"type":"object","properties":{"restrictions":{"type":"array","items":{"type":"object","description":"List of restrictions","x-not-in-database":false,"properties":{"credDefId":{"type":"string","format":"","example":"H3DW1MUWZyBkP5LG4rTYRH:3:CL:80:default","description":"Credential definition ID"},"schemaId":{"type":"string","format":"","example":"H3DW1MUWZyBkP5LG4rTYRH:2:Certificate Of Registration:6.0.0","description":"Schema ID"}}}}}}]},"description":"Data attributes contain specifications of exactly what is collected.\n"},"purpose":{"type":"string","description":"Name of purpose"},"purposeDescription":{"type":"string","description":"Description of purpose"},"lawfulBasis":{"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"]},"methodOfUse":{"type":"string","format":"","example":"","description":"Method of use - null / data_source / data_using_service","enum":[null,"data_source","data_using_service"]},"dpiaDate":{"type":"string","format":"","example":"","description":"The date on which the DPIA report is generated after a DPIA"},"dpiaSummaryUrl":{"type":"string","description":"The URl providing the DPIA result reports, summary etc that can be verified by any interested parties"},"signature":{"x-fk-model":"Signature","description":"Signature of authorising party of DataAgreement (Signatures may be chained in the case of multiple signatures)\n","type":"object","title":"Signature","x-not-in-database":false,"required":["payload","signature","verificationMethod","verificationPayload","verificationPayloadHash","verificationSignedBy","timestamp"],"properties":{"id":{"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."},"payload":{"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."},"signature":{"type":"string","format":"","example":"eyJhbGciOiJFZERTQSJ9...","description":"Signature of payload hash, the format of the signature should be specified by either verificationMethod or verificationJwsHeader"},"verificationMethod":{"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."},"verificationPayload":{"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"},"verificationPayloadHash":{"type":"string","format":"","example":"a1b2c3d4e5f6...","description":"Internally generated cryptographic hash of the value to be signed, i.e. the value of verificationPayload"},"verificationArtifact":{"type":"string","format":"","example":"","description":"A verification artifact in the form of a scanned object, image, signature etc"},"verificationSignedBy":{"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."},"verificationSignedAs":{"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\"."},"verificationJwsHeader":{"type":"string","format":"","example":"","description":"Alternative to the verificationMethod, verificationHash and verificationSignature, give a JWS serialised object (RFC7515)"},"timestamp":{"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"},"signedWithoutObjectReference":{"type":"boolean","format":"","example":false,"description":"Indicates that objectReference was left blank in the serialised version that was signed"},"objectType":{"type":"string","format":"","example":"revision","description":"Name of the schema model that objectReference points to. Values: \"signature\" or \"revision\"","enum":["revision","signature"]},"objectReference":{"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)."}}},"active":{"type":"boolean","format":"","example":"","description":"DataAgreement is active and new DataAgreementRecords can be created"},"forgettable":{"type":"boolean","format":"","example":"","description":"DataAgreementRecord may be deleted when consent is withdrawn, as its existence is not necessary for auditability."},"compatibleWithVersionId":{"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"},"lifecycle":{"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"]},"dataUsingServices":{"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"}}}]},"openApiSpecification":{"type":"object","description":"This field contains OpenAPI specification document describing the API's endpoints, models, and operations."},"dataSources":{"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"}}}]}}},{"type":"object","title":"DataAgreementExtras","required":["dataExchange"],"properties":{"dataExchange":{"type":"object","description":"Data exchange details","properties":{"dataExchangeProfile":{"type":"string","description":"Data exchange profile","enum":["AIP10"]},"id":{"type":"string","description":"Data agreement ID defined in AIP"},"credentialDefinitionId":{"type":"string","description":"Credential definition identifier"},"schemaId":{"type":"string","description":"Schema identifier"},"isExistingSchema":{"type":"boolean","description":"Is schema existing"},"qrId":{"type":"string"},"firebaseDynamicLink":{"type":"string"},"presentationRequest":{"type":"object","properties":{"name":{"type":"string","description":"Name of the presentation request"},"version":{"type":"string","description":"Version of the presentation request"},"requestedAttributes":{"type":"object","description":"Map of requested attributes","properties":{"name":{"type":"string","description":"Name of the requested attribute"},"restrictions":{"type":"array","items":{"type":"object","properties":{"schemaId":{"type":"string","description":"Schema identifier"},"credDefId":{"type":"string","description":"Credential definition identifier"}}},"description":"List of restrictions for the requested attribute"}}}},"components":{"schemas":{"restriction":{"type":"object","properties":{"schemaId":{"type":"string","description":"Schema identifier"},"credDefId":{"type":"string","description":"Credential definition identifier"}}},"requestedAttribute":{"type":"object","properties":{"name":{"type":"string","description":"Name of the requested attribute"},"restrictions":{"type":"array","items":{"type":"object","properties":{"schemaId":{"type":"string","description":"Schema identifier"},"credDefId":{"type":"string","description":"Credential definition identifier"}}},"description":"List of restrictions for the requested attribute"}}}}}}},"required":["isExistingSchema","schemaId"]}}}]},"type":"array"}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>pagination</strong><span className={"openapi-schema__name"}> object</span></span></summary><div style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"currentPage"} required={false} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","description":"Current page number","example":1}}></SchemaItem><SchemaItem collapsible={false} name={"totalItems"} required={false} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","description":"Total number of items available","example":25}}></SchemaItem><SchemaItem collapsible={false} name={"totalPages"} required={false} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","description":"Total number of pages based on limit","example":3}}></SchemaItem><SchemaItem collapsible={false} name={"limit"} required={false} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","description":"Number of items per page","example":10}}></SchemaItem><SchemaItem collapsible={false} name={"hasPrevious"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","description":"Indicates if there's a previous page","example":false}}></SchemaItem><SchemaItem collapsible={false} name={"hasNext"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","description":"Indicates if there's a next page","example":true}}></SchemaItem></div></details></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"dataAgreements\": [\n    {\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  ],\n  \"pagination\": {\n    \"currentPage\": 1,\n    \"totalItems\": 25,\n    \"totalPages\": 3,\n    \"limit\": 10,\n    \"hasPrevious\": false,\n    \"hasNext\": true\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={"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>
      