---
id: config-create-digital-wallet-open-id-trust-authority
title: "Create trust authority"
description: "Creates a trust authority configuration for credential verification against the EBSI Trust Registry or other trust lists used in OID4VCI and OpenID4VP flows."
sidebar_label: "Create trust authority"
hide_title: true
hide_table_of_contents: true
api: eJzlV99PGzkQ/ldGfgJpswmUSqeoqg4CvUtbHQhSeKBIOOvJxmXXXmwvIY3yv5/G3t1sNvRKH0466Xgg+2vG42++mW+8YgJtYmThpFZsyEYGuUMLHJwprQNeurk20i0h0Wom09Jw+hJm2kBiUKBykmfwhEbOZBLe8ZRLZR24OcLZydUYJt7VJabSOrMEbUC7OZpqiUxaZ6G0KEAqOB+fHl2PxsCVgPMCFd1ewCzTCxuziOkCQwRjwYYsxBRiPpWpdDy74VmGzlsKv+5xvQMWMYOPJVp3osWSDVdk7lA5uuRFkVXx979ZgmLFbDLHnNOVWxbIhkxPv2HiWMQKQ3E4iXbztvnKOiNVyqIOsqc4kwqtR4W+BD1rAcDWEXviWflqR8FPYw+lyciH4vmvuSADH8qWO7b2f4SYLbSyYaOHgwH9bPti0etx7OC2nZ6f4izFz3f2RcnHEkF6Ys4kGs/UzeY2fDaYaCNiAu11CZzUSdsGfg/jNG7xHAWMrS3RNITfj38hu18uP1OBtDawuyQqUWipXPz6jP9Z5lz1DHLBp9lLWW+A8U4TX1Li2LU8qzKfonkJ8WdwMkfreF7AnlRgMdFK2H1YzFGBm0u7g/6CWzAeHzQYslAW4t9fM+PWQa4FQRuWFdISJG1uTbXOkKudZW/I9b0zJd5HLy8hLdT+fAdT2oXO1umX2lQts+mCTzyTwtdNzELhPZbSUFi3IayaQe3ktEG7WzdMrgvIV/AcuUBDBUR3R4ODX+p87TDQGG1GWlAM/vq0hc5dd/Fu9W6sN0BL5TD1+cVnnhcZsuHRYLB+wf0LBG9M2Akn6ShKBwU3PEeHhlX9q8ubKlXfUbAuNG9Dd/ufQjNWDo3iGVg0T2jAL9PBaB0xi0kZuvXtih0X8hPS5d06WrET5AYN9XP/hHbNU0voVNIMQZthr9b10T5hk6Oba1LzQluPDScPrP902A/63hfBvrfw9n1doJKi7+umx1vyHkK3Prau4OW62hkVjcnYkM2dK+yw3xeY6x4vZCxTw5WLpWa0nW0HF0aLMvHjzQ/c/MzDleOpVOmPzG143Q3kbgP5FTEvEKYGvsk8Dw8iJmmpkDNWawOrNPa7Z/JOVzu+GMMDLn0Xo/YUCB/DZI7gW04tFPdbfu4hLAM5ta8pQmFwJp9RwEK6OdyHGOEe9pR29bjCZeYxKHiC+xF46dx2O4TK8N1Sl4bg6D3g8v2979Vtiq3Y1N990Cbnjg3Zx5vJ7t6SBK0Fpx9QQcGtrcMLnqqYae7cCgIaBH25e03wBqwpZcqbb9TUGC43c+VZXXq7VVlNAJsHVXqq+zVlb6brHsQT34Mw55J4Ysui0Mb9vuFGYy//2DzaJlWbjx1kGiMojH6Sws/8iabYHYKk3xyVC3BUBAh167Xs2quXnyVGjaxZP/lwlSDsVXP8fmuQ7xpeGLTNEk1TuNiniJxOdGaJhNICMRQV2VjQJuWqShMlFiQNWxHMdSYiv5gX1iVUTaOlunTI8OxzXAluhO35/UquXDhgBGpUSPtob96M4HoEex9vJvsRjM8mH+DqtPfxZgLXo7Da+OocDn4bHLzpvYX8VCf9/PRzW+lnnp7+7JLJBJX11KgLs+DJHOEwHuykbrFYxNy/jrVJ+5Wt7X8ej87+ujrrkQ0JvnTZFgc8WEInZZM9Yh4aG9J+ODg8it/EB2RL/TbnqhVPOEl1p5puVbU08j9/Xqxq0OGz6xcZl8pPmoT0qhKaW/Z0GM4wM+nn5i2xCUdOJWlc6ArOXcTmJFnDW7ZaTbnFLyZbr+nxY4nG6yIVvfFsDypZt2ZSqAfq4GwUoOxN2jPecHf0IEEJFtTTCveP37ZV9eL8ivritDrz5n7MYIYv6DzMF2zIvrKvzO/T15Qfbej5imVcpSVP6fvgl/odr7rvRnkevPJUF7Sz+pVatqLsilDYDP2nrb1o8o64/AmX75vPw5sfGjRtO3xN2b5br9d/A0/S5G8=
sidebar_class_name: "post api-method"
info_path: docs/openid4vc-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"}>Create trust authority</h1>

<MethodEndpoint method={"post"} path={"/v2/config/digital-wallet/openid/trust-authority"}></MethodEndpoint>



Creates a trust authority configuration for credential verification against the EBSI Trust Registry or other trust lists used in OID4VCI and OpenID4VP flows.

## Request

<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"}}><SchemaItem collapsible={false} name={"type"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Defines the type of trust list"}}></SchemaItem><SchemaItem collapsible={false} name={"value"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Define the trust list url"}}></SchemaItem><SchemaItem collapsible={false} name={"name"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Define the name of the trust list"}}></SchemaItem></ul></details></TabItem></MimeTabs><div><div><ApiTabs label={undefined} id={undefined}><TabItem label={"200"} value={"200"}><div></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"}>trustAuthority</strong><span className={"openapi-schema__name"}> object</span></span></summary><div style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"id"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Unique identifier for the trust authority record."}}></SchemaItem><SchemaItem collapsible={false} name={"type"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Type of the trust list (e.g. EBSI Trusted Issuer Registry)."}}></SchemaItem><SchemaItem collapsible={false} name={"value"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"URL or identifier of the trust list endpoint."}}></SchemaItem><SchemaItem collapsible={false} name={"name"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Human-readable name of the trust authority."}}></SchemaItem><SchemaItem collapsible={false} name={"createdAt"} required={true} schemaName={"number"} qualifierMessage={undefined} schema={{"type":"number","description":"Unix timestamp (in seconds) when this trust authority was registered."}}></SchemaItem><SchemaItem collapsible={false} name={"updatedAt"} required={true} schemaName={"number"} qualifierMessage={undefined} schema={{"type":"number","description":"Unix timestamp (in seconds) when this trust authority was last modified."}}></SchemaItem><SchemaItem collapsible={false} name={"disabled"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","description":"When `true`, this trust authority is disabled and not used for credential or verifier trust validation."}}></SchemaItem></div></details></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"trustAuthority\": {\n    \"id\": \"string\",\n    \"type\": \"string\",\n    \"value\": \"string\",\n    \"name\": \"string\",\n    \"createdAt\": 0,\n    \"updatedAt\": 0,\n    \"disabled\": 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>
      