---
id: read-data-disclosure-agreement-template-revision
title: "Read Data Disclosure Agreement Template Revision"
description: "Reads a Data Disclosure Agreement Template Revision."
sidebar_label: "Read Data Disclosure Agreement Template Revision"
hide_title: true
hide_table_of_contents: true
api: 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
sidebar_class_name: "get api-method"
info_path: docs/datamarketplace-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"}>Read Data Disclosure Agreement Template Revision</h1>

<MethodEndpoint method={"get"} path={"/v3/config/data-disclosure-agreement/{dataDisclosureAgreementTemplateId}/revision/{dataDisclosureAgreementTemplateRevisionId}"}></MethodEndpoint>



Reads a Data Disclosure Agreement Template Revision.

## 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={{"name":"dataDisclosureAgreementTemplateId","in":"path","description":"Unique ID of a Data Disclosure Template","required":true,"schema":{"type":"string"}}}></ParamsItem><ParamsItem className={"paramsItem"} param={{"name":"dataDisclosureAgreementTemplateRevisionId","in":"path","description":"Unique ID of a Data Disclosure Template Revision","required":true,"schema":{"type":"string"}}}></ParamsItem></ul></div></details><div><div><ApiTabs label={undefined} id={undefined}><TabItem label={"200"} value={"200"}><div>

Data Disclosure Agreement Template Revision Read

</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"}}><li className={"schemaItem"}><summary style={{}}><strong>Content-Type</strong><span style={{"opacity":"0.6"}}> json</span></summary><div><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

Content-Type header

</div></div></li></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"}>dataDisclosureAgreementTemplate</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"}}>

A template outlines an agreement between a Data Source and  Data Using Service that can be signed by both.


</div><SchemaItem collapsible={false} name={"context"} required={true} schemaName={"string[]"} qualifierMessage={undefined} schema={{"type":"array","items":{"type":"string"},"description":"Array of URIs of JSON-LD contexts"}}></SchemaItem><SchemaItem collapsible={false} name={"id"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Unique Data Disclosure Agreement Template identifier"}}></SchemaItem><SchemaItem collapsible={false} name={"type"} required={true} schemaName={"string[]"} qualifierMessage={undefined} schema={{"type":"array","items":{"type":"string"},"example":["DataDisclosureAgreement"],"description":"The Data Disclosure Agreement type from context"}}></SchemaItem><SchemaItem collapsible={false} name={"language"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"ISO 639-1 language code (e.g. 'en' or 'sv')"}}></SchemaItem><SchemaItem collapsible={false} name={"version"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The version of this Data Disclosure Agreement Template"}}></SchemaItem><SchemaItem collapsible={false} name={"templateId"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Unique Data Disclosure Agreement Template identifier (derived from 'id')"}}></SchemaItem><SchemaItem collapsible={false} name={"templateVersion"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The version of this Data Disclosure Agreement Template (derived from 'version')"}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>dataController</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"}}>

An organisation constituted as a legally defined entity in any jurisdiction

</div><SchemaItem collapsible={false} name={"publicKey"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Data controller public key"}}></SchemaItem><SchemaItem collapsible={false} name={"name"} required={true} schemaName={"string"} qualifierMessage={"**Possible values:** `<= 50 characters`"} schema={{"type":"string","maxLength":50,"description":"Data controller name"}}></SchemaItem><SchemaItem collapsible={false} name={"legalId"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Data controller legal identifier"}}></SchemaItem><SchemaItem collapsible={false} name={"url"} required={true} schemaName={"uri"} qualifierMessage={undefined} schema={{"type":"string","format":"uri","description":"Data controller URL"}}></SchemaItem><SchemaItem collapsible={false} name={"industrySector"} required={true} schemaName={"string"} qualifierMessage={"**Possible values:** `<= 50 characters`"} schema={{"type":"string","maxLength":50,"description":"Data controller industry sector"}}></SchemaItem></div></details></SchemaItem><SchemaItem collapsible={false} name={"agreementPeriod"} required={true} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","description":"Days for which agreement is valid"}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>dataSharingRestrictions</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"}}>

Restrictions on how the data is shared. OBS! Object should be 'dataSharingRestrictions'


</div><SchemaItem collapsible={false} name={"policyUrl"} required={true} schemaName={"uri"} qualifierMessage={undefined} schema={{"type":"string","format":"uri","description":"Where to find the policy"}}></SchemaItem><SchemaItem collapsible={false} name={"jurisdiction"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Jurisdiction where the data sharing restrictions apply"}}></SchemaItem><SchemaItem collapsible={false} name={"dataRetentionPeriod"} required={true} schemaName={"integer"} qualifierMessage={"**Possible values:** `>= 1`"} schema={{"type":"integer","minimum":1,"description":"How many days the data can be kept"}}></SchemaItem><SchemaItem collapsible={false} name={"geographicRestriction"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Where the data can be shared to"}}></SchemaItem><SchemaItem collapsible={false} name={"storageLocation"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Where the data is stored"}}></SchemaItem></div></details></SchemaItem><SchemaItem collapsible={false} name={"purpose"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Purpose of the Data Disclosure Agreement"}}></SchemaItem><SchemaItem collapsible={false} name={"purposeDescription"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Description of the Data Disclosure Agreement"}}></SchemaItem><SchemaItem collapsible={false} name={"lawfulBasis"} required={true} schemaName={"string"} qualifierMessage={"**Possible values:** [`contract`]"} schema={{"type":"string","enum":["contract"],"description":"Lawful basis for the Data Disclosure Agreement"}}></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 className={"openapi-schema__divider"}></span><span className={"openapi-schema__required"}>required</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={"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><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></div></details></SchemaItem><SchemaItem collapsible={false} name={"codeOfConduct"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"URL to code of conduct"}}></SchemaItem><SchemaItem collapsible={false} name={"dataAgreementId"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"ID of the connected Data Agreement"}}></SchemaItem><SchemaItem collapsible={false} name={"dataAgreementRevisionId"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"ID of the connected Data Agreement Revision"}}></SchemaItem><SchemaItem collapsible={false} name={"dataAgreementRevisionHash"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Hash of the connected Data Agreement Revision"}}></SchemaItem><SchemaItem collapsible={false} name={"active"} required={true} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","description":"Whether the Data Disclosure Agreement is published or not"}}></SchemaItem><SchemaItem collapsible={false} name={"presentationDefinitionId"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"ID of the connected Presentation Definition"}}></SchemaItem><SchemaItem collapsible={false} name={"openApiSpecification"} required={false} schemaName={"object"} qualifierMessage={undefined} schema={{"type":"object","description":"OpenAPI specification of the Data Agreement, defining available APIs for Data Using Services"}}></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 className={"openapi-schema__divider"}></span><span className={"openapi-schema__required"}>required</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  \"dataDisclosureAgreementTemplate\": {\n    \"context\": [\n      \"string\"\n    ],\n    \"id\": \"string\",\n    \"type\": [\n      \"DataDisclosureAgreement\"\n    ],\n    \"language\": \"string\",\n    \"version\": \"string\",\n    \"templateId\": \"string\",\n    \"templateVersion\": \"string\",\n    \"dataController\": {\n      \"publicKey\": \"string\",\n      \"name\": \"string\",\n      \"legalId\": \"string\",\n      \"url\": \"string\",\n      \"industrySector\": \"string\"\n    },\n    \"agreementPeriod\": 0,\n    \"dataSharingRestrictions\": {\n      \"policyUrl\": \"string\",\n      \"jurisdiction\": \"string\",\n      \"dataRetentionPeriod\": 0,\n      \"geographicRestriction\": \"string\",\n      \"storageLocation\": \"string\"\n    },\n    \"purpose\": \"string\",\n    \"purposeDescription\": \"string\",\n    \"lawfulBasis\": \"contract\",\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      }\n    ],\n    \"codeOfConduct\": \"string\",\n    \"dataAgreementId\": \"string\",\n    \"dataAgreementRevisionId\": \"string\",\n    \"dataAgreementRevisionHash\": \"string\",\n    \"active\": true,\n    \"presentationDefinitionId\": \"string\",\n    \"openApiSpecification\": {}\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={"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>
      