---
id: service-update-individual-consent-record
title: "Update consent record"
description: "This endpoint is used to update an existing consent record for a given data agreement for an organiation defined in the consent building block. Note that updating a signed consent record invalidates its earlier signature."
sidebar_label: "Update consent record"
hide_title: true
hide_table_of_contents: true
api: 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
sidebar_class_name: "put api-method"
info_path: docs/consent-management-individual-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 consent record</h1>

<MethodEndpoint method={"put"} path={"/service/individual/record/consent-record/{consentRecordId}"}></MethodEndpoint>



This endpoint is used to update an existing consent record for a given data agreement for an organiation defined in the consent building block. Note that updating a signed consent record invalidates its earlier signature.

## 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":"consentRecordId","required":true,"schema":{"type":"string"}}}></ParamsItem></ul></div></details><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 individualId","in":"query","name":"individualId","required":true,"schema":{"type":"string"}}}></ParamsItem><ParamsItem className={"paramsItem"} param={{"description":"An object with ID dataAgreementId","in":"query","name":"dataAgreementId","required":true,"schema":{"type":"string"}}}></ParamsItem><ParamsItem className={"paramsItem"} param={{"description":"An object with ID revisionId","in":"query","name":"revisionId","required":false,"schema":{"type":"string"}}}></ParamsItem></ul></div></details><details style={{"marginBottom":"1rem"}} className={"openapi-markdown__details"} data-collapsed={false} open={true}><summary style={{}}><h3 className={"openapi-markdown__details-summary-header-params"}>Header Parameters</h3></summary><div><ul><ParamsItem className={"paramsItem"} param={{"in":"header","name":"X-ConsentBB-IndividualId","required":true,"schema":{"type":"string"},"description":"Individual ID"}}></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"}}><div><span className={"badge badge--info"}>oneOf</span><SchemaTabs><TabItem label={"MOD1"} value={"0-item-properties"}><SchemaItem collapsible={false} name={"optIn"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"description":"True: The individual has positively opted in. False: The individual has explicitly said no (or withdrawn a previous consent).","example":"","format":"","type":"boolean"}}></SchemaItem></TabItem><TabItem label={"MOD2"} value={"1-item-properties"}><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>sectorPreference</strong><span className={"openapi-schema__name"}> object</span></span></summary><div style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"sector"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"","description":"Name of the sector"}}></SchemaItem><SchemaItem collapsible={false} name={"optIn"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","description":"Defines sector is opted in or not"}}></SchemaItem></div></details></SchemaItem></TabItem></SchemaTabs></div></ul></details></TabItem></MimeTabs><div><div><ApiTabs label={undefined} id={undefined}><TabItem label={"200"} value={"200"}><div>

Consent record 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"}>consentRecord</strong><span className={"openapi-schema__name"}> object</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

A consent record expresses consent (as defined in this building block's specification) to a single DataAgreement. There must be a UNIQUE constraint on (data agreement revision, individual)

</div><SchemaItem collapsible={false} name={"id"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"65471222e8c7c3bb3c2c9901","description":"Objects may be passed back by some API endpoints without an ID (PK), denoting that they are a \"draft\", i.e. a ConsentRecord that is not yet stored in the database and only exist in transit. Draft ConsentRecords do not have a Revision, but if paired up with a Signature, a valid Revision should be generated."}}></SchemaItem><SchemaItem collapsible={false} name={"dataAgreementId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","x-fk-model":"DataAgreement","description":"The DataAgreement to which consent has been given"}}></SchemaItem><SchemaItem collapsible={false} name={"dataAgreementRevisionId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","x-fk-model":"Revision","description":"The Revision of the data agreement which consent has been given to"}}></SchemaItem><SchemaItem collapsible={false} name={"dataAgreementRevisionHash"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"a1b2c3d4e5f6...","description":"Copy of the revision hash. The hash is the included in the signature and ensures against tampering with the original agreement."}}></SchemaItem><SchemaItem collapsible={false} name={"individualId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","x-fk-model":"Individual","description":"The Individual who has signed this consent record"}}></SchemaItem><SchemaItem collapsible={false} name={"optIn"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","format":"","example":true,"description":"True: The individual has positively opted in. False: The individual has explicitly said no (or withdrawn a previous consent)."}}></SchemaItem><SchemaItem collapsible={false} name={"state"} required={true} schemaName={"string"} qualifierMessage={"**Possible values:** [`unsigned`, `signed`]"} schema={{"type":"string","format":"","example":"signed","description":"The state field is used to record state changes after-the-fact. It is maintained by the Consent BB itself. Valid states: unsigned/pending more signatures/signed","enum":["unsigned","signed"]}}></SchemaItem><SchemaItem collapsible={false} name={"signatureId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","x-fk-model":"Signature","description":"A signature that hashes all the values of the consent record and has signed it with the key of the Invidiual, making it verifiable and tamper-proof. TBD: Relation to a Signature schema?"}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>sectorPreferences</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={"sector"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","format":"","example":"","description":"Name of the sector"}}></SchemaItem><SchemaItem collapsible={false} name={"optIn"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","description":"Defines sector is opted in or not"}}></SchemaItem><SchemaItem collapsible={false} name={"isLastUpdated"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","description":"Defines consent record for this sector is last updated"}}></SchemaItem><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></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  \"consentRecord\": {\n    \"id\": \"65471222e8c7c3bb3c2c9901\",\n    \"dataAgreementId\": \"string\",\n    \"dataAgreementRevisionId\": \"string\",\n    \"dataAgreementRevisionHash\": \"a1b2c3d4e5f6...\",\n    \"individualId\": \"string\",\n    \"optIn\": true,\n    \"state\": \"signed\",\n    \"signatureId\": \"string\",\n    \"sectorPreferences\": [\n      {\n        \"sector\": \"\",\n        \"optIn\": true,\n        \"isLastUpdated\": true\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={"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>
      