---
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>
      