---
id: onboard-read-organisation-cover-image
title: "Read organisation cover image"
description: "Returns the cover image of the organisation of the API key or token, as image bytes. The `Content-Type` is always `image/jpeg`, also for a PNG, GIF or WebP image that you uploaded with [Update organisation cover image](/docs/openid4vc-api/onboard-update-organisation-cover-image). The same image is public at the `coverImageUrl` of [Read organisation](/docs/openid4vc-api/onboard-read-organisation)."
sidebar_label: "Read organisation cover image"
hide_title: true
hide_table_of_contents: true
api: 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
sidebar_class_name: "get 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"}>Read organisation cover image</h1>

<MethodEndpoint method={"get"} path={"/v4/onboard/platform/organisation/coverimage"}></MethodEndpoint>



Returns the cover image of the organisation of the API key or token, as image bytes. The `Content-Type` is always `image/jpeg`, also for a PNG, GIF or WebP image that you uploaded with [Update organisation cover image](/docs/openid4vc-api/onboard-update-organisation-cover-image). The same image is public at the `coverImageUrl` of [Read organisation](/docs/openid4vc-api/onboard-read-organisation).

<div><div><ApiTabs label={undefined} id={undefined}><TabItem label={"200"} value={"200"}><div>

The cover image.

</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={"image/jpeg"} value={"image/jpeg"}><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"}}><div style={{"marginTop":".5rem","marginBottom":".5rem","marginLeft":"1rem"}}>

string

</div></ul></details></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"401"} value={"401"}><div>

The `Authorization` header is missing, or the API key or token is not valid.

</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><SchemaItem collapsible={false} name={"errorKey"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"A text code of the refusal that does not change when the text changes. Only some refusals have it, for example `organisation_suspended`, `feature_disabled` or `purpose_exists`."}}></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"errorCode\": 400,\n  \"errorDescription\": \"Bad input parameter\",\n  \"errorKey\": \"string\"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"403"} value={"403"}><div>

The API key or token does not allow this call. An API key without the scope of the operation gets the older body `{"Code", "Message"}`. An `X-SandboxOrgId` header that names another sandbox organisation than the one of the API key gets `{"errorCode", "errorDescription"}`. When a platform admin has turned off the feature of the operation for the organisation, the answer has `errorKey` `feature_disabled` and the member `feature` (the name of the feature).

</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"}}><div><span className={"badge badge--info"}>anyOf</span><SchemaTabs><TabItem label={"MOD1"} value={"0-item-properties"}><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><SchemaItem collapsible={false} name={"errorKey"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"A text code of the refusal that does not change when the text changes. Only some refusals have it, for example `organisation_suspended`, `feature_disabled` or `purpose_exists`."}}></SchemaItem></TabItem><TabItem label={"Older error body"} value={"1-item-properties"}><SchemaItem collapsible={false} name={"Code"} required={true} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","description":"The HTTP status.","example":403}}></SchemaItem><SchemaItem collapsible={false} name={"Message"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"What went wrong.","example":"Unauthorized access;User doesn't have enough permissions;"}}></SchemaItem></TabItem></SchemaTabs></div></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{}"} language={"json"}></ResponseSamples></TabItem><TabItem label={"Example"} value={"Example"}><ResponseSamples responseExample={"{\n  \"Code\": 403,\n  \"Message\": \"Unauthorized access;User doesn't have enough permissions;\"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"404"} value={"404"}><div>

The organisation has no cover image: `Organisation <organisationId> has no cover image`.

</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><SchemaItem collapsible={false} name={"errorKey"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"A text code of the refusal that does not change when the text changes. Only some refusals have it, for example `organisation_suspended`, `feature_disabled` or `purpose_exists`."}}></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"errorCode\": 400,\n  \"errorDescription\": \"Bad input parameter\",\n  \"errorKey\": \"string\"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"500"} value={"500"}><div>

Unexpected server error, for example the stored image cannot be 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"}}></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><SchemaItem collapsible={false} name={"errorKey"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"A text code of the refusal that does not change when the text changes. Only some refusals have it, for example `organisation_suspended`, `feature_disabled` or `purpose_exists`."}}></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"errorCode\": 400,\n  \"errorDescription\": \"Bad input parameter\",\n  \"errorKey\": \"string\"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem></ApiTabs></div></div>
      