---
id: service-list-data-agreement-record-history
title: "List consent record history"
description: "This endpoint is used to list all consent record history existing for an individual in an organisation defined in the consent building block. The response is paginated."
sidebar_label: "List consent record history"
hide_title: true
hide_table_of_contents: true
api: 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
sidebar_class_name: "get 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"}>List consent record history</h1>

<MethodEndpoint method={"get"} path={"/service/individual/record/consent-record/history"}></MethodEndpoint>



This endpoint is used to list all consent record history existing for an individual in an organisation defined in the consent building block. The response is paginated.

## 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":"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></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><div><div><ApiTabs label={undefined} id={undefined}><TabItem label={"200"} value={"200"}><div>

OK

</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"}>consentRecordHistory</strong><span className={"openapi-schema__name"}> object</span></span></summary><div style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"id"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Data agreement record history ID"}}></SchemaItem><SchemaItem collapsible={false} name={"organisationId"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Organisation ID"}}></SchemaItem><SchemaItem collapsible={false} name={"dataAgreementId"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Data agreement ID"}}></SchemaItem><SchemaItem collapsible={false} name={"log"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Log string"}}></SchemaItem><SchemaItem collapsible={false} name={"timestamp"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Timestamp in ISO 8601 date time format"}}></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"}>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  \"consentRecordHistory\": {\n    \"id\": \"64e91591e2f6a8000142c665\",\n    \"organisationId\": \"603e683c69dd720001c74f93\",\n    \"dataAgreementId\": \"61e183127c81650001f97d43\",\n    \"log\": \"Updated consent value to <Allow> for the purpose <Customer Loyalty Card Issuance> in organisation <The Retail Company (Germany)>\",\n    \"timestamp\": \"2023-08-25T20:56:49Z\"\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={"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>
      