---
id: config-update-digital-wallet-open-id-global-configuration-cover-image
title: "Update global configuration cover image"
description: "Uploads or updates the cover image of the OID4VCI issuer global configuration. An organisation has one issuer global configuration, so the path has no identifier. The image URL in `credentialBranding` is a public URL with the `globalConfigurationId` of the configuration."
sidebar_label: "Update global configuration cover image"
hide_title: true
hide_table_of_contents: true
api: eJztV9tu2zgQ/ZUBnxJAtpw0BRZCUWxqdwu3xSbY3B6KAKapscWGIlmSius1/O+LIWVFdpLdD+i+JALJuZ2ZOTPesBKtQ8EDlqxYcOUxYyV64aQN0mhWsBurDC89GAeNLXlAD6FCEOYRHciaLxHMIh5dTCdnt+MpSO8bdLBUZs4VCKMXctk4TvqGcK7BuCXX0scDqLgHo/HfhDLwJhqwPFRRQBuQJeogFxLdEK4rbD25+esrSA0z4TDec/XBcV1KvZyB9MDBNnMlRXy3kqGKamfJ6Lhvc1rOdmHtB8AyZizuHrGCpeubCM1ELmXg6o4rheHCop6Wn57rHhN0U/KXZczhjwZ9+GDKNSs2pC2gDvRZNypIy13IF8bVg5IHTseohaGAWLHZZsyLCut4bh35FST6pKezUWwYKeCBFWwuNXdrlrGwtsgK5oMjVdttckQ6KoNvfen77q2Zf0cR2Hb/cayZeOKt0T5ZPx2N6N9+IV18YRmrkJfo6BGpORudHATNrVVSRJjy757kNr0Y+z6ic8aNTUkgxu9Jz9ozr7MDfJ6ki83uqdQBl+hI309eW4WsOBuNti+of5JpAeyJsA+8BKltE8Byx2sM6Ag0ivegszRvQmWc/BvLF6A5+4Wh+fQCDYA2ARam0WXq+FXsMqj5Q0dJ/derCjXIACVaZdbpxR7zJPmWXKSHGAoIUyMxklonDaHiAXxACwsuFSbbjviKWEg45AGhY4SCnAhcBPCNtcaF4bPEvk298YsmdqoDOs0VeHQ0QKKZA4yI1lA0ToY1K75t2LmVX5A+77cUI196wqLlWkhkC0eRbmkAHbOMTeM0IUhqDJUhnrZNRISHihUsfzzNU7nkZdIzSOWQG4talnkaR3maDIO9ysojO8qWv1McPjq6H+oEa9OGyTLWOMUKVoVgfZHnJdZmwK0cyqXjOgylYdvsUMGlM2UjYq2+oua/NFwFvpR6+Zq4T9eHjtw/4X9FZZiqZ5eFrgx4OsiYJFMpgSxjmtd0e95SW4SMHZbB+eUUHnANRIA0p0W7HVBfP3LVdDvFbE/PDJIZqBsfYI5gHS7kTyzTMJ8lH2EGR9oEjAqC41JFDCwXeJwBDpfDA7UFtILv1qZxBMfgAdfvZ8M4GKVemF3HchE7FmsuCci2yX9/Aq+LX356OtpHvZ+wA1g6IbDOPMoSaWURhpos0IpjFdaoQ+Kv3dYV6x4WxsEtOrmQfK4Qxt0C5IGagWuBcNRuaMfAdfmK4KVD35nomurymDwKRhjlKUvSA6UQNcn4llcTmB6CSdtcBpVRZRaNUccs1tA2G4iee42P6Qlcl9yVfhDjlVwHWCiz8im1LdLR27s3Y7gdw9Hnu+vjDKYfr/+Aq8ng89013I6TtenVBZz8Njp5M3gL9cSIvJ587dmEtA95ImclBWofKXFXuZaLCuF0OHqWutVqNeTxemjcMm9lff51Ov7459XHAclsMxZkUHs1EMEqjWi67LGMEW2ktJ+OTs+Gb4YnJGuNDzXXPX/SavniZtzfwg97rDdi/t/hn+3wLYcF/Blyq7jUhH1M9qadEd/Y4ynL2vWewN2bE+lngJa0uKWwWcZemhZRRTcv7jNWGR9I+2Yz5x5vnNpu6fhHgy7OuIw9chd7MU683WiMA+aBCJiNU14H1xQDPVcNxfLS7wUaCUnoXAi0off82dax7U/Ly5trlrF5+6ukjktD/BkR1WZPn8lH4vH90fAQR0P7Qb7vrvS658ThlEi+0l/y/EWRd9RLX3D9vnuebl4V6CZTek2pvt9ut/8AmHU9RQ==
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"}>Update global configuration cover image</h1>

<MethodEndpoint method={"put"} path={"/v2/config/digital-wallet/openid/issuer/global-configuration/coverimage"}></MethodEndpoint>



Uploads or updates the cover image of the OID4VCI issuer global configuration. An organisation has one issuer global configuration, so the path has no identifier. The image URL in `credentialBranding` is a public URL with the `globalConfigurationId` of the configuration.

## Request

<MimeTabs className={"openapi-tabs__mime"}><TabItem label={"multipart/form-data"} value={"multipart/form-data-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={"coverImage"} required={true} schemaName={"binary"} qualifierMessage={undefined} schema={{"format":"binary","type":"string"}}></SchemaItem></ul></details></TabItem></MimeTabs><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></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>

Global configuration not found. The wallet makes the configuration when it deploys the organisation wallet, so this error comes only when that step failed. There is no create operation: contact support.

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