---
id: config-toggle-digital-wallet-open-id-trust-authority
title: "Toggle trust authority"
description: "Enables or disables a trust authority. A disabled trust authority is not used for credential or verifier trust validation. Give the wanted end state in `disabled`. The ID in the path must be a UUID, so this operation does not change the two built-in trust lists."
sidebar_label: "Toggle trust authority"
hide_title: true
hide_table_of_contents: true
api: eJztWetv4zYS/1cG/JQA8ivJvoyiuGyS9twG3WDjbA7YDc60OLbZSKRKUnFcw//7YUhJlmR7H4e7wwHdfmi8kmY485v3cM0E2tjIzEmt2JBdKT5N0II2IKQNvzk4k1sHPHcLbaRbdeG8fCva70BaUNpBblHATBuIDQpUTvKEmD6hkTOJpiB74okUnM7uws/yCcEtEJZcORSASoB13CFIBZPyvEkXxguE0SU9pa8z7haQErMpAoe7u9FlBFaDW0gLOkPj2YPQGASLF1zNw0FuqWGay8R1iJcXKJHW2S6LWEU5EmzIYq1mcj7W83mCl3IuHU/ueZKge5ehGokx0Z6XELCIZdzwFB0ay4Yf1y2M75T8I0eQHhYPhp7tgkwPSUht5lxJW4BEuj/xJMf9Kte5Wpj0J8CVgMlgUnI7pDJwgx4ebxFYoEFCQZK8hDCLmOIpsiFzDV1HgkXM4B+5NCjY0JkcI2bjBaacDdfMrTKisc5INWcRm2mTcseGLM+lYJuI4TNPs4S+mb4Sg9kZP+m8jk+xc8bfDDpvZi9OOn1xGr/EV3wwPXvBNlEbzHf+B0+6sBdW0tlyJab6uYEkOE0u6j3UewrpgNZ14X6BClY6B0sO6N8tkAs0UWCG5knGCCZXNtincrHCIWOtHD678nSCTeyVgRhyB9JGwOdcKusK9yfHCuTc7ZeerErWqtOlXKoGcdt3rpEXERYUAp27EocWg+4n9UmN6+oiF7aOBmiVrGBZgkVuS7jHFK9L6RbAYYrcoAEex2gtOP2IqgbvHgoF5zcjeMRVE2rHH9EetuTM6NS/LYg9OHKutMGGxF0YazJbcU6HPo15kpDd+AEDTaX3AfR8nT4shFdgcnM3ht7TSS+kix4XqVQ9nslHXPXWPJO/4mokNr2CQ0eb+QTIfsiFR3zyj85tPg0mGIkJ5VI6UWBmkHAS3puCdet61cAi75MqJ9W1hz5zIF0E09wBsQ9HvzNz4r+UyoKcbd19qt2iYGu3PrBPYZ9+8FlaF5WpKNFqTqeudG523bXMVwKzRK9QdOFcQa4elV6qWtBGZJ52atwfwSF4fByUTCN/VJOD/y5IF0ABIWczNKhcS8okgZQ/hmDwnjHjMgmm/ft4fANn/X6VFANI27TYhLaRFGc8sZ/Jio0s+PL16zc44Gfxi+nJ7LTf7w/4qXg16LPNQ2CJ1r3VYkVs2mnXJx7l6BXPsoQiS2rV+91Solzvnq+nv2PsGqJ+ZGWdZQ8RywwlNyfRElX1ZsthqnWCXLGolZR9kE9IqkkI5T1NQsmuSAkTj9IkAumNiiq8ZDVwiN/G/0ci20wrGyQ76fe9gA0ZyHPzTPioaR9vMNbGM/9qzJpYNIvg/sPbh/KZ896IRQtCx7ct0TxFin019CuaiX2QFzrDe//XhrBoFwnq1jxiCyoVobUI+eVg47Aoi8qBziOEJGWYmCuKVSolUWGaCJzvqXy/iQk6zyoNMee7OzSdum5lsbUNz/ja5qHAchdTVHlK3n81vh39c3xNzt8y6CrDJrKkfTP1hmxrYVJwmcAR/YLxLQwGb+Dl4CSQovDEx76ENvUoz99EzHd5X7b/tQ4uu0+4n3Twt61AxCsKxaOoLT6xaeP/3sLd++sGo0JUEDrOU1SuKe3CucwOez3Dl925dIt8mls0RUh1Y532ru4vOrFWVhsn87SHy7jj+XaIa8/gzPYokdoe9R7+6/F19zlNCICQWL+k/29VQdxx+Xq3LC1VBUwzt4LAKfQuPhy9zxMIwSnLXhDm5NpK+6LbstMd+J4frqV1JOy/nxzJDoezY9Xpffs89dmo5cmSr6jrdbmpkm9DR/9oE7EiI5y7mmoqT6e++O3komdwMkXreJrBkVRgMdZK2OMS7T3aLjnJMZfWoaFy8C1y95syD16dveoPBi/7/U3EiuT/3xU84dZBqgUZ4T8m+6ZZkqUoK0WZFYrgqBunrm/NHR/azFqV66Fdg3x1LTpANlzTv85Cef3qUlk/Do3R5kILEtb/vqwBv3N4uwBuqbcmlMrh3Nuwgu7M23uH/b48X0XwWy5Aqix3UM3qrOgtmr5BH1bDIdl3u4qAmcREULim0lqp5tFuQdWmnMmK8jel/GJ18kTdapGg255VLSt8g01u0rbI4C9skTtVIPUnih1oXvylnXWkHBrFE9+ToAF/TAujTcQsxnloXD+u2bmfS9nw4wNtV976oZ0ShH9CWvM5bbFYsfeCsPiCI7/6ujz7cHHMIhaq4bmKF9oQVCm6habNWZZ7pGiFNGS12VgEbp0QHD2doZKiF5qDKhB66/a2adMroo+RFqTjvg3bJaa6gIASo0lqzYrAVHd4JrtybrhyXan3bJVujBZ57AP4AJsvcbh1fE5dxgFyG163BXnY2uaWXDR4VmmhykXCKuHQKFrA9ad3+Z1aV21JtvuX1max6KYmDT6Tcu9TzvGZwZl8RlGsPoKMMIEjpV2xXjVcJh6DjMd4HAF2590W2yEUhD/Q1oDgoL3Mj5MuNVV1X1yzsE76qdwg/nI/3tWttmqCjFtbihc4FTLTwqchBFQI+rzgmzdPsJ3QyG6MQocyyPvtHH5Vxmh9PvaDKhlnpstcxGOfizDlktzA5lmmjfvb1vSV9eTP20dNn6m7W0vxiggyo5+k8Fv7WJNotD+nv9S+NyaFEL++p/zgu0iSHi6q9tLCyNqcqxjh6J0P9NGxb0f3E94YtNURVXK4OSaJnI51YsnHpPVrOqyuGahUBiv45Yy0NscIFjopdjm+wV1BkS5q3a+F3HrnclwJboTteH0lVw5miV7aYPkCaS/t/ekFfLiAo1/ux8cRjK7GP8HtZeeX+zF8uAinjW7fweB1f3DaeQHppY576eV1veMO+2s/fCYyRmW95cu4y3i8QDjp9ndMt1wuu9y/7moz7xW0tnc9urj67faqQzQ0nkqXNHzAg1UOX2U8U9ILZj/pn5x1T7sDos20dSlXNXnCdUW7uWgHTa1Wfr/9KW9/iqinPX4vS7hUhLA36bqoZR/Z00nYH82kn0ob9SxcIKnQuTdrGot8gmjfoZRl7SFiC20dHbBeT7nFO5NsNvT4jxyNL9M0BRgfdKH0VXmnWDQeNO/R+6LZOd5/WfL/eQe11xZlIVSraigaMhaxR6qTu3dUm4dqqvlGzL7fL32/X/p+v/T9ful/eL+0N+GFxLZzy1SlPppAwjcXIXd1xvWN0XB3DN5SnHszfvbb+kh3c0ed97S4hUr9xMsMX9JNEl+yIfvEPjFfAX1b56dser5mCVfznM/p+8CWOmpe9Pfb2ebRzzbFD0rXe7N9e8wJutD/SbO9JD9QCP+Kqx+rz8ObgwTVYBC+JlM8bDabfwH3b2JT
sidebar_class_name: "put 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"}>Toggle trust authority</h1>

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



Enables or disables a trust authority. A disabled trust authority is not used for credential or verifier trust validation. Give the wanted end state in `disabled`. The ID in the path must be a UUID, so this operation does not change the two built-in trust lists.

## 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 identifier of a trust authority of the organisation. The value must be a UUID, so the identifiers `0` and `1` of the two built-in trust lists are not valid here.","in":"path","name":"trustAuthorityId","required":true,"schema":{"type":"string","format":"uuid"},"example":"b7d1f4a2-8c3e-4a91-9f52-0d3c6e7a1b45"}}></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={{"description":"Optional. Unique identifier of the sandbox organisation to use for this request. When you send this header, the service runs the operation in the context of the named sandbox organisation, that is, against the wallet of that sandbox organisation and not against the main wallet of the organisation. Leave the header out to use the main wallet.\n\nThe service reads this header only when you authenticate with a bearer access token. When you authenticate with an API key, the service takes the sandbox organisation from the API key and ignores this header. To run an API-key call in a sandbox organisation, bind the key to the sandbox organisation with `PUT /v2/config/admin/apikey/{apiKeyId}/sandbox-org` instead.\n\n`X-SubwalletId` is the deprecated name of this header. The service continues to accept it, but `X-SandboxOrgId` wins if you send both headers.\n\nThe sandbox organisation must exist, must belong to your organisation and must be deployed. An unknown identifier, an identifier of a sandbox organisation that is not deployed, and an identifier that belongs to a different organisation all make the call fail with HTTP 400.","in":"header","name":"X-SandboxOrgId","required":false,"schema":{"type":"string"},"example":"6889e1a4c5b2f30001a3d710"}}></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><strong className={"openapi-schema__required"}>required</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"disabled"} required={true} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","description":"When `true`, the trust authority is disabled. When `false`, it is enabled.","example":true}}></SchemaItem></ul></details></TabItem></MimeTabs><div><div><ApiTabs label={undefined} id={undefined}><TabItem label={"200"} value={"200"}><div>

The updated trust authority record.

</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 className={"openapi-schema__divider"}></span><span className={"openapi-schema__required"}>required</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

The trust authority after the change.

</div><SchemaItem collapsible={false} name={"id"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Unique identifier of the trust authority record. Records that the organisation created have a UUID. The two built-in trust lists have the identifiers `0` and `1`, and you cannot read, update, toggle or delete them with the per-identifier operations.","example":"b7d1f4a2-8c3e-4a91-9f52-0d3c6e7a1b45"}}></SchemaItem><SchemaItem collapsible={false} name={"type"} required={true} schemaName={"string"} qualifierMessage={"**Possible values:** [`ETSI_TL`]"} schema={{"type":"string","enum":["ETSI_TL"],"description":"Type of the trust list. The service accepts `ETSI_TL` (ETSI TS 119 612 trusted list) only.","example":"ETSI_TL"}}></SchemaItem><SchemaItem collapsible={false} name={"value"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Location of the trust list. For the `ETSI_TL` type, this is the HTTP or HTTPS URL of the trusted list document.","example":"https://raw.githubusercontent.com/EWC-consortium/ewc-trust-list/refs/heads/main/EWC-TL.xml"}}></SchemaItem><SchemaItem collapsible={false} name={"name"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Name of the trust authority. The value is an empty string when the create or update request gave no name.","example":"EU Trust List"}}></SchemaItem><SchemaItem collapsible={false} name={"disabled"} required={true} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","description":"When `true`, this trust authority is disabled and not used for credential or verifier trust validation. The two built-in trust lists always return `false`.","example":false}}></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. The two built-in trust lists always return `0`.","example":1747011600}}></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. The two built-in trust lists always return `0`.","example":1747011600}}></SchemaItem></div></details></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"trustAuthority\": {\n    \"id\": \"b7d1f4a2-8c3e-4a91-9f52-0d3c6e7a1b45\",\n    \"type\": \"ETSI_TL\",\n    \"value\": \"https://raw.githubusercontent.com/EWC-consortium/ewc-trust-list/refs/heads/main/EWC-TL.xml\",\n    \"name\": \"EU Trust List\",\n    \"disabled\": false,\n    \"createdAt\": 1747011600,\n    \"updatedAt\": 1747011600\n  }\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"400"} value={"400"}><div>

Bad request. The `disabled` field is missing, the organisation or wallet cannot be resolved, or the trust authority does not exist.

</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={"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>
      